【问题标题】:Website serves the old/depreciated version of javascript file instead of the updated one网站提供旧版本/折旧版本的 javascript 文件,而不是更新版本
【发布时间】:2011-11-18 15:28:39
【问题描述】:

编辑: 我当前的元标记会导致缓存问题吗?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="/Templates/homepage.dwt" codeOutsideHTMLIsLocked="false" -->
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  

我有一个网站上传到网络主机 iPower。我的 HTML 页面链接了一个外部 javascript 文件(称为 AppLogic.js)。当我将 AppLogic.js 的新版本上传到虚拟主机时,我发现旧版本(以前上传的版本)是从服务器提供的,而不是我最新的 AppLogic.js 上传。这会在我上传新版本的 AppLogic.js 后大约 5 分钟(有时甚至更长)发生,在那段时间之后,它开始提供正确的 AppLogic.js 文件(最新版本)。

您知道为什么会发生这种情况以及如何阻止这种情况吗?

我感觉 javascript 文件缓存在 IE、Firefox 中,并且它们不会每次都下载新文件。我正在尝试修复仅在从 webhost 提供的实际网页上发生的错误(错误不会在本地发生),这意味着我会不断调整我的 AppLogic.js 文件,然后将其上传到网络服务器以查看更改是否修复了漏洞。如果没有这种血腥的 .js 文件缓存,它的速度又慢又烦人,但是对于这个问题,它只是 该死的阻止我修复错误!

任何关于究竟出了什么问题以及如何解决它的建议都会非常有帮助

我尝试了以下所有方法,但并没有阻止自己得到错误的 .js 文件:
- 我曾尝试在 firefox 中按 CTRL、SHIFT 和 DELETE,然后删除所有历史记录和缓存
- 在 IE 中按 CTRL 12 打开开发工具,然后选择缓存,然后选择始终从服务器加载、删除缓存、删除域 cookie 和所有其他的。这只有时有效,这很令人沮丧。
- 使用程序 CCleaner 删除我所有的 cookie 和其他 IE 缓存数据。有时有效 - 重新启动我的整个笔记本电脑。工作量很大,但非常耗时

【问题讨论】:

  • 您是否在您的网页上尝试过以下标签? &lt;META HTTP-EQUIV="Pragma" CONTENT="no-cache"&gt;
  • denolk:这样你就不允许页面上的任何东西被缓存..这不是发帖人要求的..

标签: javascript html caching webserver web-hosting


【解决方案1】:

您可以更改请求 JS 文件的方式,方法是添加 AppLogic.js?123456789(其中数字是时间)。这样,您就可以强制浏览器始终加载新文件!

【讨论】:

  • 所以你的意思是在 HTML 页面中是这样的:。我需要更改每个页面加载的数字吗?
  • 这是可能的,或者您在更新 AppLogic.js 文件时更改了数字!
【解决方案2】:

你也可以在你的.htaccess中添加以下内容

<FilesMatch "AppLogic.js$">
Header unset Cache-Control
Header unset Expires
Header unset Last-Modified
FileETag None
Header unset Pragma
</FilesMatch>

它不会为用户缓存文件...您可以尝试添加一段时间然后将其删除,因为您不想总是提供文件...我们需要一些缓存;)

SiteSafeNL 解决方案效果很好,尝试声明一个全局变量版本,然后在每个网站更新 AppLogic.js?v=1.0.0 然后更新 AppLogic.js?v=1.0.1 等时更改它...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-10-31
    • 1970-01-01
    • 2011-10-04
    • 2013-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多