我正在努力在我的htaccess文件中进行简单的URL重写才能工作。它看起来像这样:
RewriteRule ^getbars/([A-Za-z\d,]+)?$ getbars.php?guid=$1 [NC,L]
我们的想法是将/ getbars / 519f1dec603f9等网址重定向到/getbars.php?guid=519f1dec603f9
出于某种原因,当我尝试在getbars.php中获取它时,guid参数为空
但是,如果我将其更改为
RewriteRule ^bars/([A-Za-z\d,]+)?$ getbars.php?guid=$1 [NC,L]
在我的浏览器中和load / bars / 519f1dec603f9,它似乎工作正常。
我做错了什么?
答案 0 :(得分:1)
因为您的服务器上启用了内容协商(此处与PATH_INFO功能相结合)?如果是这种情况,内容negociation会在读取重写规则之前自动“重写”getbars / *到getbars.php。
=>您可以尝试在.htaccess中添加Options -MultiViews
吗?