使用htaccess重定向时排除文件夹

时间:2014-03-07 03:04:02

标签: .htaccess mod-rewrite

我有一个问题。 我想将domain.com/var重定向到domain.com/id=var 我可以这样做,但是当用户编写像我的文件夹一样的var时,htaccess会首先重定向到该文件夹​​:/

这是我的实际htaccess

Options +FollowSymLinks -Indexes
RewriteEngine On
RewriteBase / 


RewriteRule ^([a-zA-Z0-9-+/]+)$ index.php?id=$1 [L]
RewriteRule ^([a-zA-Z0-9-+/]+)/$ index.php?id=$1 [L]

但是当用户编写例如css时,htacces redirecto到domain.com/css/?id=css 第二个问题是如果用户放在var之后,例如domain.com/var /

我该如何改变? Thx 4 all !!

1 个答案:

答案 0 :(得分:0)

您需要跳过重写文件/目录:

Options +FollowSymLinks -Indexes
RewriteEngine On
RewriteBase / 

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([a-zA-Z0-9+/-]+)/?$ index.php?id=$1 [L,QSA]