2

すべてのトラフィックを当サイトのウェブページにリダイレクトしている外部ウェブサイトがあります。このリダイレクトを制御することはできず、コンテンツ URL は次の方法でミラーリングされます。

ユーザーが次の場所に移動する場合:

www.externaldomain.com/1234 

次の場所にリダイレクトされます。

www.ourdomain.com/1234 

存在しないページである場合があり、404 エラーが発生します。潜在的なユーザーを失わないように、すべてのトラフィックexternaldomain.comをホームページにリダイレクトするにはどうすればよいですか?ourdomain.com

機能することはわかってHTTP_REFERERいますが、正しく機能するように設定するのに問題があります。

4

2 に答える 2

0

この回答を参照してください

Apache の modrewrite を使用する必要があります。

RewriteEngine オン

RewriteCond %{HTTP_REFERER} !^mydomain.co.uk$ [N]

于 2013-06-14T16:13:36.943 に答える
0

ここで尋ねる最も重要な質問は、すべてのトラフィックをホームページにリダイレクトするか、「時々」言及した特定のページが存在しない (404) かということです。どちらもここで回答されています。

参照されたすべてのトラフィックを特定の外部ドメインからホームページにリダイレクトする

特定のドメイン (リファラー) からのすべてのトラフィックをリダイレクトする必要がある場合は、次の手順を実行できます。

 RewriteEngine On 
 RewriteCond %{HTTP_REFERER} ^http://externaldomain\.com/ [NC]
 RewriteRule ^(.*) /index.php [R=301,L] 


404 エラー トラフィックのみを特定のドメインからホームページにリダイレクトする

これに基づいてリダイレクトする場合は、次を使用します。

 RewriteEngine On 
 RewriteCond %{HTTP_REFERER} ^http://externaldomain\.com/ [NC]
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule ^(.*) /index.php [R=301,L] 


上記のApacheフラグに関して:

 [NC]    = No case (or case insensitive)
 [L]     = If the rule matches, no further rules will be processed.
 [R=301] = Apply a 301 redirect*

Apache フラグに関するより詳細な情報や詳細情報については、こちらを参照してください。


*これらのルールの検索エンジン最適化

301 リダイレクトの理由 - 301 リダイレクトは、リダイレクトされたページに 90% 以上のリンク ジュース (または潜在的なランキング パワー) を渡す恒久的なリダイレクトです。301 は、このタイプのリダイレクトの HTTP ステータス コードを指します。ほとんどの場合、SEO の観点から Web サイトにリダイレクトを実装するには、301 リダイレクトが最適な方法です。利点に関しては、さまざまな種類のリダイレクトを利用して対処する方法に関する豊富な情報がここにあります.

于 2013-06-15T02:47:03.963 に答える