![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
検索記事からURLをそのままにリダイレクトする方法
YUCASEE MEDIA(ゆかしメディア)(http://media.yucasee.jp/)で使われているリダイレクト法なのですが、
たとえば「プライベートバンク」で検索して、8位ぐらいの
「プライベートバンク | 様々なプライベートバンクについて | YUCASEE ...」の記事タイトルをクリックします。
すると、その記事に直接飛ぶのではなく、一旦、キャンペーンなどのフラッシュのページに飛びます。
その後、URLはそのままでリフレッシュで10秒後に、実際の記事に飛ぶ、という仕組みなのですが、これはいったいどのような方法と考えればよろしいでしょうか? 2度目は直接その記事に飛ぶのです。
できれば具体的に、サンプルソースなどがあれば教えていただければと思っています。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
1つ前のリンク(URL)は、document.referrerで取得できます。
検索サイトにもよりますが、Yahooなどは検索につかったキーワードがそのままURLに残っています。
その場合、検索ページから飛んでくると、そのページが判りますので、そのままURLにすると利用者と同じ検索ができます。
CGIでURLに検索ワードが残らない処理だとキーワードは不明です。
2回目のアクセスかどうかは、cookieを使うと良いでしょう。
document.cookieでアクセスしたことを読み取り、記録できます。読み取るクッキーがないときは1回目、あれば2回以上ということです。もちろん、アクセスカウンタにして何回アクセスしたかという記録にしても良いでしょう。
これをCGIと組み合わせるとこちらでそのアクセス状況も記録できます。
ブックマークからのアクセスや直接URLを入力してアクセスすると、document.referrerは空になります。
これを利用して、検索やリンクによるアクセスと切り分けることも可能です。
No.1
- 回答日時:
JavaScriptを使う方法とCGIを使う方法が思いつきます。
どちらも似たような手順ですが、HTMLでフォームを送信する場合、呼び出すファイル(次のページ)にたいして、フォームの内容をURLの後ろに付けて受け渡しています。
CGIでは、常套手段とも言えますが、受け取ったデータを利用してページを作成しますから、CGIにリンク先のURLをデータとして送ります。これはJavaScriptでも同様です。
そして、受け取ったページが広告とリンク先を表示(リフレッシュで転送)すれば言い訳です。
最初のリンクはこんな風に出来ます。
<a href="ad.html?http://www.dammy.com/">www.dammy.com</a>
これで、見せかけはwww.dammy.comへのリンクとなりますが、実際はad.htmlへのリンクです。そして、ファイル名の後に「?」を付けて、データが続くことを示します。
CGIの場合は、ad.htmlではなく、ad.cgiになります。
JavaScriptでは、document.location.searchで?以降のデータを取得できますので、ad.htmlが読み込まれた後、取得を実行します。「?」も付いてくるので、1文字目は削除します。
get_data = document.location.search;
get_data = get_data .substring(1,get_data .length);
あとは、location.href で転送するか、リフレッシュ用のタグを書き出しておけばOKかと。
CGIの場合は、フォームを受け取るCGIのほとんどにその機能がありますので、参考になるものは多数あるかと思います。
parlなら、$ENV{'QUERY_STRING'}で、上記のデータ部分を取得します。
とりあえず、仕組みを理解したいということならJavaScriptでやってみるのが簡単です。
スマートに作り込んだり、リンク先を名簿として作って名簿番号を渡すという手順にするならCGIが良いですね。
ご回答ありがとうございます。
基本的な仕組みは教えていただいた、Javaスクリプトで理解できました。
ただ、検索で表示されたリンクワードのURLをそのままJavaスクリプト取得できるのかがよくわからないところです。
1)キーワード検索から飛んできたユーザーには初め、キャンペーンページを見せる。
↓
2)10秒後にリフレッシュして、実際の記事に飛ぶ(URLの変更はない)
↓
3)2回目以降のアクセスでは、キャンペーンページへは飛ばずにダイレクトに記事に。
という一連の流れは、やはりCGIなどになってしまうでしょうか?
SEO対策的な目的でこの手法が導入したいと考えています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- インターネット広告・アフィリエイト アフェリエイトサイト 作成について 5 2022/05/13 21:31
- オープンソース 研究室内だけで見れるサイトをどの様に構築すればいいかわかりません 2 2022/06/30 20:58
- MySQL 【投稿情報用データベース posts】は必要ないと思います。 1 2022/06/02 21:25
- WordPress(ワードプレス) ワードプレスのパーマリンク設定について 1 2023/02/11 19:08
- その他(プログラミング・Web制作) .htaccessファイルの修正がこれで問題ないかどうか 1 2022/04/21 08:42
- その他(ブログ) 二次創作用のサイトを開設し漫画を投稿したい。 二次創作の漫画を描いている者です。pixivやTwit 1 2022/04/13 20:51
- その他(IT・Webサービス) 動画が多い(容量が多い)Webサイト作成 1 2023/04/08 17:42
- JavaScript イラストレーター、縦中横のショートカットをスクリプトを使って作成する方法 1 2023/04/19 11:15
- その他(インターネット接続・インフラ) 語学レッスン予約ページを作ろうとしています。 1 2022/09/26 17:43
- MySQL PHP 画像のアップロード Qiita 2 2022/11/28 04:44
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
iPhoneメールに受信拒否したメ...
-
Amazon での買い物後に来るスパ...
-
迷惑メールがウザいです。 メー...
-
Yahoo!メールなのですが、1日に...
-
詐欺メールでしょうか?
-
昨日このようなメールが届きま...
-
男子学園 <dgclub@dgdgdg.com>...
-
「偽メール」について
-
0671678689は迷惑電話ですか?┐...
-
ショートメールでこの様な迷惑...
-
Apexにてチャットで野良と喧嘩...
-
プロモーションメールを停止す...
-
メールでこんなものが届いたの...
-
これって詐欺?
-
お客様のチャンネルは上級者向...
-
【Gmailコマンド】1年以上前の...
-
スマホでネットを見るとありと...
-
こんなショートメールが来たの...
-
ドコモのメールアドレスをもつ...
-
IRSというところからこんなメー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
music center for pc以外のフリ...
-
EmEditorの色分け表示法
-
adobeソフトのシリアル番号の申...
-
検索記事からURLをそのままにリ...
-
AsusEEEPC_IEGD_8_0_Windows_V1...
-
「ご処理進めて頂きますようお...
-
エクセルで、日付を入力すると...
-
CloseとDisposeの違い
-
Excelシート上のマクロを登録し...
-
エクセルVBAで、MsgBox やInput...
-
「PC Helpsoft Driver Updated...
-
VBAでループ内で使う変数名を可...
-
DoEventsがやはり分からない
-
VBA エンターキーでイベントに...
-
switch の範囲指定
-
エクセルの画面にユーザーフォ...
-
アクセスVBAのMe!と[ ]
-
メルカリのメルカードで買い物...
-
【Excel】特定の文字を含むセル...
-
VBの質問#if 0 then ってどう...
おすすめ情報