我有一堆工作正常的 RewriteRules,并且必须存在于服务器回复的每个主机名中。一个例子:
RewriteRule ^/file\.js /var/pear/Package/file\.js [QSA,L]
现在,我想强制目录重定向中缺少斜杠的规范名称。所以我补充说:
<VirtualHost *:80>
ServerName custom.name.com
</VirtualHost>
如果我去http://custom.name.com/some_dir它会重定向到http://custom.name.com/some_dir/
现在,如果我访问http://custom.name.com/file.js或http://original.host.name/file.js,我会得到 404 而不是 Pear 中的文件。如果我删除 VirtualHost 3 行,一切都会恢复正常。
任何想法为什么?
编辑1:
尝试了 ServerAlias 而不是 ServerName,结果相同。
编辑2:
只需设置一个 VirtualHost 就会导致 RewriteRules 停止工作。一个空就够了。