2014-01-30 4 views
0

Я застрял в кажущейся простой проблеме. я переехал мой сайт со всем содержимым из корня в подпапку, какПереадресация Htaccess после того, как сайт Magento переместился в подкаталог

www.example.com 

Для

www.example.com/shop 

Теперь я хочу, чтобы перенаправить все старые страницы на новый адрес.

То, что я пытался в .htaccess корня, но did'nt работы:

RewriteEngine On 
RewriteRule ^(shop)($|/) - [L] // To prevent loops 
RewriteRule ^(.*)$ http://www.example.com/shop$1 [R=301,L] 

Но теперь все старые страницы перенаправления example.com/shop

Edit:

После того, как был перемещен, я должен был добавить следующий код в HTAccess подкаталога, чтобы заставить его работать:

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

ответ

1

Вы можете использовать это правило:

RewriteEngine On 

RewriteCond %{THE_REQUEST} !/shop/ [NC] 
RewriteRule !^shop/ /shop%{REQUEST_URI} [NC,R=301,L] 
+0

Это перенаправляет www.example.com/shop/index.php –

+0

Ничего плохого это, что так как это '/ магазин /'? – anubhava

+0

См. Edit of post –

Смежные вопросы