Apache服务过时的CSS

时间:2015-08-19 11:17:22

标签: css apache

我有一个开发流浪盒,我正在更新一些CSS。我的CSS通过

提供给浏览器
<link rel="stylesheet" href="style.css?v=1439980743">

其中v = 1439980743是文件修改日期的时间戳。虽然此值在浏览器中正确更改,但apache永远不会为新CSS提供服务。所有浏览器(Chrome,FF,IE)都具有相同的行为,清除缓存不会带来新的CSS。

Fiddler报告代码200表明该文件已成功收到(而不是304),但收到的文件是旧版本的CSS。

就好像Apache正在缓存旧的CSS并每次提供它而不管系统中的实际文件。

我可以让新CSS可用的唯一方法是重命名CSS文件在浏览器中加载页面(在CSS上触发404错误),然后重命名它。在下一次刷新时,新的CSS变得可用。即使是httpd重启也不允许加载新文件。

的Apache / 2.2.3 CentOS版本5.10(最终版)

有没有人知道任何可能导致此问题的apache设置?

已加载的模块

 core_module (static)
 mpm_prefork_module (static)
 http_module (static)
 so_module (static)
 alias_module (shared)
 authz_host_module (shared)
 autoindex_module (shared)
 dir_module (shared)
 env_module (shared)
 log_config_module (shared)
 mime_module (shared)
 negotiation_module (shared)
 setenvif_module (shared)
 php5_module (shared)

1 个答案:

答案 0 :(得分:3)

找到答案。显然vagrant不支持sendfile(),所以在httpd.conf中添加以下内容为我解决了问题。

EnableSendfile off