我不完全确定为什么会发生这种情况,但我似乎收到了一些关于CSS字体字体的IE8请求的常规服务器端错误报告。CSS中的路径是相对的,我没有看到来自IE9的任何错误。
下面是一个日志错误消息示例(一些信息模糊了)。
{
"DateTimeUTC": "2012-12-10T15:58:32.2512016+00:00",
"RequestId": "goq9",
"UserIP": "72.221.104.224",
"UserAgent": "Mozilla/4.0 (compatible; MSIE 8.0; AOL 9.6; AOLBuild 4340.5004; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; MDDS; .NET4.0C; Zune 4.7)",
"ReferringUrl": "https://some-site/some/path/option1/option2",
"Message": {
"Exception": null,
"RequestId": null,
"ErrorCode": 404,
"ErrorDescription": "Not Found",
"OriginalUrl": "/some/path/fonts/rokkitt/rokkitt-webfont.eot"
},
"Exception": null,
"RequestUrl": "https://some-site.com/some/path/fonts/rokkitt/rokkitt-webfont.eot",
"Cookies": [/*removed from display*/],
"PostData": {},
"DebugInfo": null
}正如您所看到的,看起来请求的是一个相对于页面url的路径的字体,而不是css文件的url。(/content/css/site/site.css,字体为/content/ fonts /.)IE8只是碰巧检查了相对于页面吗?还是两者都有呢?
我看到类似的问题,似乎都是IE8,但我无法自己重新制造这个问题。它看起来确实是一个AOL支持的IE8,不确定这是否有什么区别。
发布于 2013-02-10 23:10:03
我也遇到了同样的问题,我认为这是由嵌入样式表(即HTML头部的样式元素中的规则)引起的。我在错误日志中看到了IE8中的404,在奇怪的路径中查找.eot文件。.eot文件是在我的外部样式表中使用相对路径引用的。相对于样式表URL解析此路径的浏览器找到了字体文件,但IE8似乎偶尔会解析相对于文档URL的路径。我无法用我的IE8实例来再现这一点,但是日志显示了一个非常清晰的故事。
我们最近更改了我们的应用程序,使用了一个小的嵌入式样式表(即头中的一个样式元素),其中包含了一些与字体相关的规则,然后404就开始出现了。我删除了这个嵌入样式表,并将规则移至外部样式表。自从做了这个改变后,我就没见过404了。
编辑这个答案是不正确的。将规则从嵌入样式表移动到外部样式表不会改变行为。我在一个星期五的下午做了这个改变,没有看到任何404的周末,但是今天(星期一)看到404的.eot文件。
https://stackoverflow.com/questions/13844912
复制相似问题