-1

我目前有一个RewriteRule设置,以便域之后的任何内容都作为变量传递给 pages.php

RewriteEngine on
RewriteRule ^([^/\.]+)/?$ pages.php?alias=$1

因此,例如,http://www.example.com/contactus显示其中的内容http://www.example.com/pages.php?alias=contactus工作正常。

是否可以继续上述操作,但排除应该“正常”运行的特定目录。

所以,http://www.example.com/shop实际上去http://www.example.com/shop并且没有被重定向。

4

1 回答 1

0

如果你想要它这样规则不会被应用到任何现有的文件或目录,你会想要:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/\.]+)/?$ pages.php?alias=$1

如果你想要它,那么规则忽略shop目录,那么:

RewriteEngine on
RewriteCond %{REQUEST_URI} !^/shop
RewriteRule ^([^/\.]+)/?$ pages.php?alias=$1
于 2013-04-08T11:40:27.530 回答