编码HTML时,浏览器并不总是检测到更改

时间:2013-10-01 08:29:55

标签: php html css browser-cache

当我编写HTML和CSS并在浏览器中加载页面以检查更改时,有时它不会更新一段时间。这显然会导致增量更改出现问题,因为很难判断它是否已更改为适合我的最新更改。

我想知道是否有办法解决这个问题?可能是浏览器(或模式),特别是对于没有这种行为的情况?

6 个答案:

答案 0 :(得分:3)

在Windows上尝试 Ctrl + F5 Cmd + Shift + R 在OSX上,这将避免您的浏览器在加载页面时读取其缓存(至少在Chrome或Firefox时)

答案 1 :(得分:2)

主要是因为浏览器缓存。

只是一个建议(您可能会发现它很有用,作为其他答案的补充):

如果您使用的是chrome,则可以选择在开发工具栏打开时禁用缓存。在我开发的过程中,确保没有缓存对我有用。 (我开发时我的开发工具栏一直打开,所以它对我有用),这是屏幕截图。

引用chrome dev工具(https://developers.google.com/chrome-developer-tools/docs/settings

  

一般

     

禁用缓存将阻止仅为页面缓存资源   哪些DevTools打开。这不会禁用缓存   DevTools已关闭

enter image description here

答案 2 :(得分:1)

您可以尝试删除浏览器缓存并重新加载页面。 在CSS的情况下,我发现有时我需要在浏览器中单独加载CSS文件并刷新它以进行更新。

答案 3 :(得分:1)

听起来像是您的浏览器缓存,您可以通过清除或执行“硬刷新”来确认。

如果要永久停止此操作,则需要抛出一些无缓存标头,您可以从Web服务器或服务器端代码执行此操作,具体取决于您的设置(请参阅How to control web page caching, across all browsers?

答案 4 :(得分:1)

在使用CTRL + F5的Windows刷新时。浏览器不会从缓存中显示。同样在开发人员工具中,您可以告诉它不从缓存加载

答案 5 :(得分:0)

Hmm可能是一个Web服务器设置,缓存对同一资源的请求。我曾经在JSP上看到tomcat上的很多东西。使用tomcat,我们习惯删除已编译的类('work'文件夹),但在PHP的情况下,您可以检查服务器缓存设置(文件/会话)。

示例:“典型的Web服务器,例如Apache,使用文件修改时间来通知Web浏览器所请求页面的年龄,允许浏览器采取适当的缓存操作。使用动态网页,实际的PHP脚本可能只是偶尔改变;同时,它显示的内容(通常是从数据库中提取的内容)会经常变化。“

来源:http://www.sitepoint.com/caching-php-performance/

另一种解决方法是在需要重新加载PHP文件时触摸(添加空格并保存)。