我正在努力建立一个由其他人设计的网站,但我遇到了一个我以前从未见过的奇怪问题。
在整个网站中,所有文件路径都是相对的,因此,例如,所有img标签都有一个src,如src ='i / image.png'。对于css链接标记,脚本标记等也是如此。这很正常,过去我从来没有遇到任何问题。
问题在于,当某些人使用浏览器访问该网站时,这些资源都没有加载,但对于其他人来说,网站加载得很好。检查其中一台计算机上的页面后,我看到图片的网址为http://i/image.png
,而在工作计算机上则为http://mydomain.com/i/image.png
。
对此有何解释?为什么有些计算机(全部使用IE)无法添加域,而其他计算机正常工作?如果这是一个可能的罪魁祸首,我们在这里工作的代理背后,因为我还没有看到网站外部错误地加载网站。此外,网站使用的是XHTML 1.0 Transitional的文档类型。
答案 0 :(得分:2)
好的,我想我找到了答案。似乎在IE中,在兼容性视图设置中,默认情况下会选中“在兼容性视图中显示Intranet站点”。因此,我们网络中访问该网站的任何人都被强制进入兼容性视图,这会混淆图像,CSS和脚本的所有路径。除非他们明确启用兼容性视图,否则网络外的任何人都可以访问它将要使用的网站。
在另一个Stack Overflow thread上,我发现了一个hack,据我所知,它总是阻止为该站点启用兼容性视图。