我在同一台服务器上托管多个站点,并使用http-vhosts文件为它们指定虚拟主机信息。它工作得很好。问题是我在Movable Type中更改了条目的创建方式。我希望他们没有文件扩展名。所以它目前是domain.com/entry/15而不是domain.com/entry/15.html。因为我拿出.html我假设apache不知道该怎么做所以它是以纯文本的形式吐出页面。我怎样才能解决这个问题?我添加了一个虚拟主机块:
DefaultType text/html
我还在httpd.conf中补充说希望它能为我的所有网站全局修复它。我重新启动了apache仍然是同样的问题。有什么想法吗?
答案 0 :(得分:2)
这可能是内容协商问题吗?在少数情况下,我看到Apache尝试通过查看所服务文件的前几个字节来确定所请求的文件类型。
我已经看到这样的问题可以通过在http.conf中注释掉mod_negotiation并重新启动来解决。有关详细信息,请参阅mod_negotiation documentation。
答案 1 :(得分:2)
我刚刚通过在httpd.conf中禁用Magic Mime解决了同样的问题(有些文件显示为html,有些文件显示为文本,无明显原因)。
修改/etc/httpd/conf/httpd.conf
评论Mime Magic Module的行:
MIMEMagicFile /usr/share/magic.mime
MIMEMagicFile conf/magic
重启Apache并清除浏览器缓存
答案 2 :(得分:0)
这似乎是正确的。小心共享一个链接,或为其中一个页面返回的HTTP标头?附:以及放置该指令的整个Apache配置块,用于上下文?
答案 3 :(得分:0)
如果你在你网站的root目录中创建一个.htaccess,那么.htaccess的内容是: DefaultType text / html 然后问题是固定的。