我有一个.htaccess文件,并使用mod重写将/tags
重定向到/tags/
。当目录包含名为tags.php
的文件时,它不起作用,但是当我删除该文件时它会起作用。我需要更改什么设置才能使.htaccess文件压倒文件结构?我正在使用PHP在Ubuntu 11.10上运行Apache2。
RewriteEngine On
RewriteBase /
RewriteRule ^tags/([a-zA-Z0-9-_.\ ]+)$ tags/$1/ [R]
RewriteRule ^tags/([a-zA-Z0-9-_.\ ]+)/([0-9]*)?$ tag.php?tag=$1&page=$2
RewriteRule ^tags$ tags/ [R]
RewriteRule ^tags/$ tags.php
答案 0 :(得分:0)
尝试在您的代码规则中添加L
以停止进一步处理,即
RewriteRule ^tags$ tags/ [R,L]
答案 1 :(得分:0)
您的规则顺序错误,您忘记了[L]停止处理重写规则。尝试:
RewriteEngine On
RewriteBase /
RewriteRule ^tags$ tags/ [R, L]
RewriteRule ^tags/$ tags.php [QSA]
RewriteRule ^tags/([a-zA-Z0-9-_.\ ]+)$ tags/$1/ [R,L]
RewriteRule ^tags/([a-zA-Z0-9-_.\ ]+)/([0-9]*)?$ tag.php?tag=$1&page=$2 [L]
答案 2 :(得分:0)
在服务器配置中禁用Multiviews
。