1

訪問者を website.com/promotions から website.com/go/promotions に送信するための単純な htaccess リダイレクトがあります。以下のコードを使用すると、リダイレクト ループ エラーが発生します。

RewriteEngine on
RewriteCond %{REQUEST_URL} !^go$
RewriteRule promotion/index.html go/promotion/index.html [R,L,NC] 

RewriteCond は、リクエスト URL に「go」が含まれている場合にリダイレクトしないことでループを防ぐことになっていますが、機能していないようです。

さらに、promotion/anypage.html が go/promotion/anypage.html にリダイレクトされるように正規表現を設定しようとしています。次のコードを試しましたが、何にも一致しませんでした。

RewriteEngine on
RewriteCond %{HTTP_HOST} !^go$
RewriteRule ^promotion/(.*)$   go/promotion/$1   [R,L,NC]

これらのブロックのいずれかが適切に機能しない理由について、手がかりを持っている人はいますか?

乾杯

4

2 に答える 2

1

URL全体がそれ自体で「行く」だけであるかどうかを確認していますが、そうではありません:

RewriteEngine on
RewriteCond %{REQUEST_URI} !^/?go/
RewriteRule promotion/index.html go/promotion/index.html [R,L,NC] 
于 2012-07-30T08:31:33.197 に答える