<VirtualHost *:80>
ServerName www.mycook.com
DocumentRoot /webapps/mycook/public
<Directory /webapps/mycook/public>
Allow from all
Options -MultiViews
</Directory>
</VirtualHost>
那么为什么以下这一行?
Options -MultiViews
我理解,how MultiViews很有效,坦率地说,我不明白为什么有人会使用它。不过,我不明白为什么Passenger配置指南认为在站点配置中明确禁用该选项非常重要。
任何人都可以了解情况吗?
答案 0 :(得分:0)
我对Rails并不熟悉,但一般来说,启用MultiViews会导致某些情况下的搞笑行为 - 最常见的是,当输入错误的URL时,它最终会提供一个页面,而不是返回404
Here是关于MultiViews另一个微妙可能问题的博客文章。
This GoDaddy博客文章指出了另一个有问题的后果:
脚本文件特别值得关注。假设您有一个旧版本的script.pl文件,您可以将其复制到script.pl.bak以进行备份。对于Script.pl.bak的请求仍然会被Apache解释为Perl脚本,从而导致执行旧版本的代码!可以想象由于Apache的这种行为,可能会无意中执行脚本文件的其他实例。
总而言之,Multiviews适用于静态HTML页面的集合,但在具有重写URL的环境中并不是一件好事。