我有一个开发流浪盒,我正在更新一些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)
答案 0 :(得分:3)
找到答案。显然vagrant不支持sendfile(),所以在httpd.conf中添加以下内容为我解决了问题。
EnableSendfile off