2013-04-11 51 views
2

我有以下的.htaccess禁用URL重写特定URL

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-l 


RewriteRule ^([^>]+)/([^>]+)/([^>]+)/([0-9]+)$ index.php?region=$1&city=$2&course=$3&page=$4 
RewriteRule ^([^>]+)/([^>]+)/([^>]+)$ index.php?region=$1&city=$2&course=$3 
RewriteRule ^([0-9]+)$ index.php?page=$1 

如果我访问

templates/firstTemplate/css/style.css 

它重定向到index.php,因此不适用我的style.css,怎么能我为这个特定的网址禁用网址重定向?

回答

1

条件只适用于紧随其后的规则,这意味着您的第二条和第三条规则没有任何所需的条件。你需要重复他们的其他两个规则:

RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-l 
RewriteRule ^([^>]+)/([^>]+)/([^>]+)/([0-9]+)$ index.php?region=$1&city=$2&course=$3&page=$4 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-l 
RewriteRule ^([^>]+)/([^>]+)/([^>]+)$ index.php?region=$1&city=$2&course=$3 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-l 
RewriteRule ^([0-9]+)$ index.php?page=$1 
+0

它的工作,感谢 – BackSlash 2013-04-11 09:55:46

+0

乌尔惊人我在谷歌上搜索了几个小时这个曲子我'后'用ajax是相冲突以重写URL,这样啊帮我和固定它,谢谢你<3 – 2016-09-03 11:44:52