2017-08-08 12 views
0

に書き直してください。申し訳ありませんが、この質問は何百万回も聞かれましたが、うまく動作しません。私は無限ループを得るか、単にリダイレクトしません。これまでのところ、私が持っているフォルダ内のすべてのルートを

https://www.example.com 
https://www.example.com/a/ 
https://www.example.com/b/ 
https://www.example.com/c/ 

https://www.example.com/shop/ 
https://www.example.com/shop/a/ 
https://www.example.com/shop/b/ 
https://www.example.com/shop/c/ 

に:私は次のようにリダイレクトしたい

Options +FollowSymLinks -MultiViews 
RewriteEngine On 
RewriteBase/

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^$ /shop/$1 [L,QSA,NC] 

は私が助けることができる百万のオプションを、試してみましたか?

私も試してみました:

RewriteCond %{REQUEST_URI} !^/shop/ 
RewriteRule ^(.*)$ /shop/$1 
+0

誰か?私は本当にこれが必要です。 –

答えて

0

あなたはこのために、次の1ライナーリダイレクトを使用することができます。

RedirectMatch ^/((?!shop/?).*)$ /shop/$1 

これは、自分のホームページを含む/ショップ/へのすべての要求をリダイレクトします。

注:これは入力URLを書き換えません。ブラウザのアドレスバーに入力されたURLを変更する古いURLに新しいURLをリダイレクトするだけです。

+0

答えてくれてありがとうございました。今度はループしています: 'https://www.example.com/shop/shop/shop/shop/shop/shop/shop/shop/shop/shop/shop/shop/shop/shop/shop/shop/ショップ/ショップ/ショップ/ショップ/ショップ/ショップ/ index.html ' –

+0

申し訳ありませんが、わずかなタイプミスがありました。今すぐ更新版をお試しください。 – starkeen

+0

ありがとう、私は感じが近づいていた。今私はexample.com/a/を試してみるとexample.com/shop/a/の代わりにexample.com/shop/にリダイレクトされます –