上传源代码到我的网络主机后,并不会立即反映出源代码的更改。

5
这不是一个纯粹的编程问题。我正在使用一个名为getfreehosting的免费网络主机。我正在使用他们的在线文件管理器传输文件。时不时地,我在源代码上所做的更改并没有立即反映出来。例如,当我在Chrome上运行我的应用程序并查看页面源代码时,我发现正在运行的JavaScript仍然是旧版本!大多数情况下,这种情况不会发生,但是当它发生时,非常令人沮丧。我尝试过清除浏览器缓存,甚至尝试直接在他们的服务器上编辑文件。有时候这能解决问题,但其他时候则无法解决。
将文件传输到网络主机时是否经常遇到此类问题?或者这是使用免费网络主机的缺点之一吗?
谢谢。
3个回答

5

您可以尝试清除您的浏览器缓存,或者使用 CTRL+F5 快捷键进行页面刷新。否则,托管提供商可能正在使用缓存层来帮助减轻资源使用压力。


3
服务器有责任在向浏览器提供脚本文件时指示缓存生存时间(1小时、1天、1个月等等)。这是一项服务器端设置。
缓存对于服务器效率和客户端性能都非常重要,因此您不希望完全取消它。
您可以缩短缓存生命周期的服务器端设置或在脚本文件中使用版本号(就像jQuery一样),这样当您修改脚本文件时,将其命名为新文件名,例如“myscript-v12.js”,并更新相应的HTML文件以引用新文件名。然后,一旦浏览器获取新的HTML文件,就保证会获取新的JS文件,因为新文件名可能从未出现在浏览器缓存中。
如果这仅仅是您在开发和修订网站时遇到的问题,那么只需要在上传新文件后清除浏览器缓存,然后当浏览器加载该页面时,它将没有任何版本存在于缓存中,并且将被迫从服务器获取新版本。

2
现代浏览器中有一个缓存系统。在浏览网站之前,请尝试清除缓存。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接