我让mod_rewrite在Apache2上工作。导致问题的重写条件是
RewriteRule ^(blog|press|library)(.?)$ /?p=$1 [QSA,NC,L]
按照博客和媒体的预期重写URL,即
www.example.com/blog
在内部重定向到
www.example.com/?p=blog
到目前为止,这么好。但是对于URL
www.example.com/library
我们突然得到了
www.example.com/library/?p=library
在浏览器的地址栏中,并在mod_rewrite日志文件中:
[...] rewrite 'library/' -> '/?p=library'
[...] split uri=/?p=library -> uri=/, args=p=library&p=library
其中拆分应该只导致args = p = library
QSA指令是必需的,因为我需要像/library?book=xyz
这样的网址才能工作。
我在俯瞰什么?