我的网址重写规则有问题。我的htaccess中有以下规则:
SetEnv PHP_VER 5
RewriteEngine on
RewriteRule ^bands.html$ /groupes.php [L,NC]
RewriteRule ^bands/([0-9a-zA-Z,-]+).html$ /groupes.php?groupe_nom_rewrite=$1 [QSA,L,NC]
RewriteRule ^bands/([0-9a-zA-Z,-]+)/([0-9a-zA-Z,-]+).html$ /albums.php?groupe_nom_rewrite=$1&album_nom_rewrite=$2 [QSA,L,NC]
RewriteRule ^labels.html$ /labels.php [L,NC]
RewriteRule ^labels/([0-9a-zA-Z,-]+).html$ /labels.php?label_nom_rewrite=$1 [QSA,L,NC]
前四个规则正常工作,但最后一个规则没有:参数label_nom_rewrite
在重定向期间丢失。在使用之前我有QSA
标记和类似规则(例如,在第二个中,我将参数groupe_nom_rewrite
作为$_GET
变量,如预期的那样。)
为什么?我该如何解决?
提前感谢您的时间!
答案 0 :(得分:0)
尝试关闭多视图:
Options -Multiviews
mod_negotiation模块可以打开,这意味着当它看到以/labels/
开头的请求时,它会自动将请求发送到/labels.php
并绕过mod_rewrite。