0

サブディレクトリに WordPress Web サイトがあります。WordPress コーデックスの指示を使用してこれを設定しましたが、クライアントがインターネット上の古いドメインへのリンクに関する問題を解決するために 301 リダイレクトを追加するように依頼するまで、すべてうまくいきました。古いドメイン名は新しい Web サイトを指していますが、永続的な 301 リダイレクトは使用していません。現在のドメイン名は Encoreco.com です。

古いドメインは同じ場所を指していますが、301 リダイレクトではありません (上部の URL が変更されていないことがわかります。何らかの理由で、これは私の JavaScript スライドショーが機能しないことを意味します)。これが何が起こるかです:encoreconstructionco.com

この問題を解決するために 301 リダイレクトを追加すると、無限ループ エラーが発生します。古いドメインの問題を解決しようとするが、無限ループを作成するコード行は次のとおりです。

RewriteRule (.*) http://encoreco.com/$1 [R=301,L]

そして、ここに私の現在の .htaccess があります。

RewriteCond %{THE_REQUEST} \.html
RewriteRule ^(.*)\.html$ /$1 [R=301,L]

# Redirect www to non-www
RewriteCond %{HTTP_HOST} ^www\.(.*)
RewriteRule (.*) http://%1/$1 [R=301,L]

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress
4

1 に答える 1

0
RewriteRule (.*) http://encoreco.com/$1 [R=301,L]

… 正しいリクエストを含むすべてをリダイレクトするため、無限のリダイレクトを取得する必要があります。

そのルールを間違ったホスト名のみに制限します。

RewriteCond %{HTTP_HOST} !encoreco\.com
RewriteRule (.*) http://encoreco.com/$1 [R=301,L]
于 2012-10-05T05:26:19.717 に答える