我有这个改写:
RewriteRule ^gallery/([^/]+)/?$ /gallery.php?title=$1 [L]
但是,当导航到gallery / a /时,内部重定向是:
gallery.php/a //(instead of: gallery.php?title=a)
什么会导致这种行为?
答案 0 :(得分:1)
选项MultiViews
可能是罪魁祸首。在MultiViews
之前运行的Apache's content negotiation module
使用选项mod_rewrite
,并使Apache服务器匹配文件扩展名。因此/file
可以在网址中,但它会投放/file.php
。
在.htaccess:
的顶部使用此行将其关闭Options -MultiViews