2013-02-15 19 views
9

Wiem, że to brzmi jak wiele innych pytań tutaj, ale nie mogę znaleźć odpowiedzi.. Przekierowanie htaccess z jednego podfolderu do innego podfolderu

że jesteś na: www.domain.com/folderA/folder2/folder3/

Chcę, aby przekierować do: www.domain.com/folderB/folder2/folder3/

Tak więc cała struktura pozostaje taka sama ... po prostu przekierowuje. Teraz do tej pory mam:

RewriteEngine on 
RewriteCond %{REQUEST_URI} ^/folderA [NC] 
RewriteRule ^(.*)$ /folderB/$1 [R=301,L] 

Ale kiedy używam, że będzie to po prostu zrobić www.domain.com/folderB/folderA/folder2/folder3/

Co robię źle? Jak pozbyć się tego folderuA?

Odpowiedz

12

Wzór ^(.*)$ zawiera również prefiks folderA. Musisz wyraźnie określić folderA we wzorcu i przechwycić tylko ostatnią część w RewriteRule. Następnie można upuścić RewriteCond

RewriteEngine on 
RewriteRule ^/?folderA/(.*)$ /folderB/$1 [R,L] 

Nigdy test z 301 pozwoliło znaleźć tę odpowiedź Tips for debugging .htaccess rewrite rules szczegóły.

Powiązane problemy