htaccess の問題について教えてください。簡単に見えますが、そうではありません。http://www.domain.com/en/
からにリダイレクト (301) する必要がありhttp://www.domain.com/a/en
ます。
私はそれを行うために多くの方法を試しました:
これは /a/en/ でループします
RewriteEngine On
RewriteCond %{REQUEST_URI} !^a/en/$
RewriteRule ^en/$ http://www.domain.com/a/en/ [L,R=302]
これはリダイレクトしません
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/en/$
RewriteRule ^en/$ http://www.domain.com/a/en/ [L,R=302]
これは機能する可能性がありますが、使用する必要があるルールが他にもあるため、使用できません
RewriteEngine On
RewriteRule ^a/en/$ - [L]
RewriteRule ^en/$ http://www.domain.com/a/en/ [L,R=302]
これは /a/en でループします
RewriteEngine On
RewriteRule ^en/$ http://www.domain.com/a/en/ [L,R=302]
これは動作しません
Redirect 302 ^/en/$ http://www.domain.com/a/en/
今、私はそれを行う方法を他に知りません...ありがとう!
ところで: より良いデバッグのために 301 の代わりに 302 を使用しました