Sal*_*ali 31 jquery http-status-code-404
浏览apache日志并发现有趣的事情:
当用户访问我包含jquery的任何页面时,apache会尝试获取jquery-xxx.min.map文件并因404错误而失败.这是一个例子:
xxx.xxx.xxx - - [Date:TIME +0000] "GET /js/lib/jquery-1.10.2.min.map HTTP/1.1" 404 3134 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.95 Safari/537.36"
Run Code Online (Sandbox Code Playgroud)
这并不奇怪,因为我显然没有这个min.map文件.我不喜欢这种行为.
查看jquery源代码,我发现了
/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license
//@ sourceMappingURL=jquery-1.10.2.min.map
Run Code Online (Sandbox Code Playgroud)
首先,这个sourceMappingURL在评论中,没有其他命中.当我刚删除它时,404错误消失了.
我毫不怀疑来自jquery的人知道他们在做什么,但任何人都可以解释我:
这个sourceMappingURL创建了一些以404结尾的连接是什么意思?
当我删除这条线时,我失去了什么?
我能找到的唯一相关的事情是这个链接,据我所知(如果我错了,请告诉我):
Rya*_*ick 31
有几种方法可以消除错误.
默认情况下,Chrome会启用源地图.您可以通过打开开发人员工具并更改常规设置来禁用此功能.取消选中"启用源映射"选项.这当然不会修复Apache上的错误.
更改您的网页以使用由jQuery或Google提供的CDN,而不是使用本地版本.这将阻止您的本地Apache在日志中显示该问题.
或者,您必须重写本地版本的jquery-1.10-2.min.js顶部的注释以停止此错误.否则你需要等待jQuery的补丁.
从:
/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license
//@ sourceMappingURL=jquery-1.10.2.min.map
*/
Run Code Online (Sandbox Code Playgroud)
至:
/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license */
Run Code Online (Sandbox Code Playgroud)
sourceMappingURL是一个HTML5功能,在过去几个月中已经发生了一些变化.
有关sourceMappingURL的更多信息:JavaScript源地图简介,2012年3月
请参阅以下与sourceMappingURL最近更改相关的链接: sourceMappingURL和sourceURL语法已更改,2013年6月
| 归档时间: |
|
| 查看次数: |
17893 次 |
| 最近记录: |