我的.htaccess文件中有这些行:
Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteBase /
RewriteRule ^([^/]+)/?$ index.php?page=$1 [L,QSA,NC]
这些重写规则工作正常,但我在这个服务器的根目录中有一个favicon.ico图标,但我不能用这些重写规则解决它。
如果它不是对favicon.ico文件的请求,我怎么能重写这个.htaccess文件只重写?
只需在规则中添加例外:
Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond ^([^/]+)/?$ !^favicon\.ico
RewriteRule ^([^/]+)/?$ index.php?page=$1 [L,QSA,NC]
这就是说我想提一下,除非有充分的理由使用.htaccess
样式配置文件,否则你应该将这些重写规则放入主服务器配置中。这样更快更容易调试。
在你的RewriteCond
之前添加这个RewriteRule
:
RewriteCond %{REQUEST_URI} !=/favicon.ico