![Apache 多视图意外行为](https://linux22.com/image/606762/Apache%20%E5%A4%9A%E8%A7%86%E5%9B%BE%E6%84%8F%E5%A4%96%E8%A1%8C%E4%B8%BA.png)
我在我的网站上启用了 Apache 多视图但它导致了意外行为。
我的网站 www.example.com 有一个图像文件夹,例如 www.example.com/imgs/,我将所有图像存储在其中
因此,如果我有 www.example.com/imgs/pic1.jpg 并尝试访问它,则一切正常,并且它会在我的浏览器上显示图像。
现在,如果我继续从 imgs 文件夹中删除 pic1.jpg,并尝试再次访问 www.example.com/imgs/pic1.jpg,我原本以为会出现 404,但不知何故我却访问到了页面 www.example.com/index.php(尽管 css 样式已丢失)。这不是重定向,地址栏中的 URL 仍显示 www.example.com/imgs/pic1.jpg,但会在 www.example.com/index.php 加载脚本
我怀疑这与多视图有关,我的 htaccess 只有多视图选项。那么我该如何解决这个问题?为什么 apache+multiviews 会为上一个文件夹的网站的 index.php 脚本提供服务?
谢谢
只需提及对 www.example.com/script 的请求正确加载 www.example.com/script.php
答案1
我找到了导致此行为的原因。正如 Michael 提到的,是主域的 .htaccess 影响了附加域。就我而言,解决方案很简单,因为我不需要附加域目录中的重写规则,所以我只需在附加域的 .htaccess 文件中添加一行即可:
RewriteEngine 关闭