5

这本身不是一个编程问题。我正在使用一个名为getfreehosting的免费网络主机。我正在使用他们的在线文件管理器来传输文件。有时,我对源代码所做的更改不会在我上传后立即反映出来。即当我在 Chrome 上运行我的应用程序,然后去查看页面源代码时,我意识到运行的 JavaScript 仍然是旧版本!在大多数情况下,这不会发生,但一旦发生,就会非常令人沮丧。我试过清除浏览器的缓存。我什至尝试直接在他们的服务器上编辑文件。有时它可以解决问题,但有时却不能。

这是将文件传输到网络主机时遇到的常见问题吗?或者这可能是使用免费网络主机的缺点之一?

谢谢。

4

3 回答 3

5

您可以尝试清除浏览器的缓存,或者使用 CTRL+F5 刷新技巧。否则,托管服务提供商可能会使用缓存层来帮助缓解资源使用。

于 2013-04-17T01:13:12.637 回答
3

服务器有责任向浏览器指示脚本文件在提供给浏览器时的可缓存生命周期(1 小时、1 天、1 个月等)。这是服务器端设置。

缓存对于服务器端效率和客户端性能都非常重要,因此您不想完全打败它。

您可以缩短缓存生命周期的服务器端设置,也可以在脚本文件中使用版本号(就像 jQuery 一样),这样当您修改脚本文件时,可以给它们一个新的文件名,例如“myscript-v12. js”并更新相应的 HTML 文件以引用新的文件名。然后,一旦浏览器得到新的 HTML 文件,就保证得到新的 JS 文件,因为新的文件名不可能在浏览器缓存中。

如果这只是您个人在开发和修改网站时遇到的问题,那么只需在上传新文件后清除浏览器缓存,然后当您的浏览器加载该页面时,缓存中不会有任何版本,并且将被强制执行从服务器获取新版本。

于 2013-04-17T01:21:23.357 回答
2

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

于 2013-04-17T01:12:36.947 回答