HTACCESS除了指定的目录

时间:2013-04-08 11:19:16

标签: apache .htaccess redirect directory

我目前有一个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并且未被重定向。

1 个答案:

答案 0 :(得分: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