我尝试将进入目录的任何内容重定向到另一个目录。我使用的rewriterule命令是:
RewriteRule ^VirtualDirectory(.*)$ GENS/RealDirectory$1 [L,NC]
问题是我想要重写一个没有反斜杠到VirtualDirectory的查询,就像查询是针对VirtualDirectory /
一样我得到的行为是:
查询VirtualDirectory /工作得很好而没有用户注意到 对VirtualDirectory的查询工作得很好,但brwoser中显示的网址是:GENS / RealDirectory /
我尝试了很多东西,但我无法得到我想要的行为。
如果我添加规则
RewriteRule ^VirtualDirectory$ GENS/RealDirectory/ [L,NC]
处理该特定情况,除了在VirtualDirectory
之前将页面的所有资源都重写到该文件夹之外,它的效果很好答案 0 :(得分:0)
发生的事情是内部重写发生时没有斜杠,然后mod_dir接管并将浏览器重定向到同一个URL,但带有斜杠。您可以使用.htaccess文件中的DirectorySlash Off
关闭mod_dir。如果您希望始终使用尾部斜杠,请尝试将规则更改为:
RewriteRule ^VirtualDirectory/?(.*)$ GENS/RealDirectory/$1 [L,NC]