HTACCESS某些文件夹除外

时间:2013-11-15 22:02:27

标签: regex apache .htaccess mod-rewrite routing

我有一个旧网站我试图接管,它有一个糟糕的htaccess文件,我需要调整以启用'FOLDERS',而不是路由一切。

所以我有一个名为“RESOURCES”的文件夹,但它正试图通过索引文件进行路由.....但我需要加载资源文件夹而不是路由。我如何例外?

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} !^www\.website\.ca$ [NC]
RewriteRule .? http://www.website.ca%{REQUEST_URI} [R=301,L,QSA]

RewriteRule ^(browse)/?$ /browse.php [L,QSA]
RewriteRule ^([\ \+\-0-9a-zA-Z_]+)/?$ /index.php?where=$1 [L,QSA]
#RewriteRule ^([\ \+\-0-9a-zA-Z_]+)/([-0-9a-zA-Z_]+)/([-0-9a-zA-Z_]+)/?$ /index.php?where=$1&what=$2 [L,QSA]
RewriteRule ^(-0-9a-zA-Z_]+)/([-0-9a-zA-Z_]+)/?$ /index.php?where=$1&what=$2 [L,QSA]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . / [R=301,L,QSA]

</IfModule>

1 个答案:

答案 0 :(得分:1)

RewriteBase /

下方添加此规则
RewriteRule ^RESOURCES/- [L,NC]

这将跳过名为RESOURCES

的文件夹的其余重写规则

要跳过所有文件夹,请使用此规则:

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^- [L]