多言語のWebサイトがあり、最初のページは、何らかのロジックに基づいた301リダイレクトを使用して特定の言語ページにリダイレクトします。例:http://mysite.com/
はhttp://mysite.com/en/
にリダイレクトします
問題は、これらのリダイレクトによってプライマリリクエストが破棄されるため、GAのトラフィックソースに対して正しい結果が得られないことです。
このケースをどのように処理しますか?私たちにできることはありますか?どんなアイデアでも歓迎されます
私が見つけることができるものはすべて、HTTPリファラーが301リダイレクトを通じて保持されることを示唆しています。編集:Internet Explorer 8、Firefox、ChromeおよびOperaでこれをテストしました。これらはすべて、301リダイレクトを通じて元のリファラーを渡します。
ただし、あなたのケースでそれが起こっていないことが確かな場合は、(非公式に) GAのリファラーをオーバーライドする を手動で実行できる可能性があるようです。そのため、ユーザーがmysite.com
にアクセスすると、たとえば、REFERERヘッダーの値でCookieを設定し、mysite.com/en/
でそれをGAに渡すことができます。
Chrome、IE、Firefoxのテストを終えたばかりですが、301リダイレクトの場合、全体でHTTP_REFERER文字列を保持するものはありません。
また、あるドメインから別のドメインへのリンクをクリックしたときにテストを行い、ボード全体で、それらすべてがHTTP_REFERER文字列を正しく保持するようにしました。
これは、すべてのブラウザーの新しい標準動作ですか?他の誰かが同じ行動を経験していることを確認できますか?
テストするために私がしたことは次のとおりです。www.domainA.comの.htaccessファイル:
RewriteEngine On
RewriteRule .* http://www.domainB.com [R=301,L]
Www.domainB.comの.htaccessファイル:
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^http://www.domainA.com/$
RewriteRule .* http://www.somefakedomainname.com [R=301,L]
その後、www.domainA.comにアクセスして、何が起こったのかを見ました。 .htaccessファイルを更新してテストした後、各ブラウザーのローカルキャッシュをクリアしました。
次に、www.domainA.comドメインの.htaccessファイルのRewriteRuleをコメント化し、www.domainA.comのルートindex.htmlファイルにwww.domainB.comを指す通常のリンクを追加しました。
いずれの場合も、www.domainA.comでリンクをクリックしたの場合、www.domainB.comにリダイレクトされた後、www.somefakedomainname.comにリダイレクトされました。
それぞれの場合、www.domainA.comにアクセスしたときに1リダイレクトが有効になっているで、自動的にwww.domainB.comにリダイレクトされましたが、その後でNOT get www.somefakedomainname.comにリダイレクトされます。
数人がこのテスト(または使用したい方法)を複製して、すばらしい動作が見られるかどうかをお知らせください。
Bluehost.comをホスティングプロバイダーとしてこれを行いました。どういうわけか、これが特定のホスティング(ApacheまたはIIS構成関連)であるかどうかを知りたいです。
ありがとう