我遇到的情况是我试图从某些URL中删除一个子目录。
这是我正在努力实现的目标
http://www.example.com/shop/some_product应该转到http://www.example.com/some_product
但是
我需要http://www.example.com/shop/customer/account保持不变。
基本上我需要重写任何 shop /...,除了 shop / customer /... shop / admin /...
这是我试过的
RewriteCond %{REQUEST_URI} !^/shop/customer
RewriteCond %{REQUEST_URI} !^/shop/admin
RewriteCond %{REQUEST_URI} !^/shop/sales
RewriteRule ^/shop/(.*) http://www.example.com/$1 [L]
这里有人有任何建议吗?
答案 0 :(得分:0)
感谢arkascha。
原来我遇到了几个问题。以下是我最终的结果:
在/shop/.htaccess
RewriteCond %{REQUEST_URI} !^/shop/(media|skin|js|customer|admin|sales|checkout)/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) /$1 [L]
我不需要重写与文件或目录匹配的URL。此外,似乎有/ shop /是RewriteCond的要求,但在RewriteRule中不起作用。