头标记中src / href属性末尾的奇怪字符

时间:2010-09-02 08:37:37

标签: drupal drupal-6

快速提问:为什么drupal会在页面顶部的srchref标记的linkscript属性末尾添加字符?我有这个:

<link type="text/css" rel="stylesheet" media="all" href="/ste_thecle/modules/views/css/views.css?n" />

对于加载的每个样式表和脚本都是一样的。我无法弄清楚为什么会这样做,我想也许这就是为什么我的主题在IE中搞砸了......

感谢。

3 个答案:

答案 0 :(得分:5)

每次浏览器加载外部JavaScript文件时,浏览器都会将文件放入其缓存中。 这样,第二次重新加载页面并尝试加载相同的外部文件时,浏览器将从缓存中使用它。

如果您在JavaScript文件中进行了更改并尝试重新加载页面,则更改将不会生效,因为浏览器将使用缓存文件。

为防止出现这种情况,Drupal会在JavaScript文件的URL末尾添加一个随机值。这样浏览器就会将该文件视为新文件,并且不会在浏览器缓存中使用该文件。

一个好的做法是在生产阶段删除此功能,以便页面加载速度更快。

答案 1 :(得分:1)

添加这些内容是为了强制缓存控制。它与IE中混乱的主题无关。

答案 2 :(得分:1)

由于每次都添加了不同的查询字符串(?n),因此浏览器“认为”资源不同,因此重新加载文件而不是从缓存中检索文件。通过这样做,Drupal确保您不会查看自缓存以来已更改的陈旧文件。