【问题标题】:Managing/Updating headers in Apache Server在 Apache 服务器中管理/更新标头
【发布时间】:2017-11-21 11:02:09
【问题描述】:

我们使用 Apache 作为 CRM 应用程序 (Siebel) 的 Web 服务器。我们在 15 天内不断在 CRM 应用程序上部署新的 JS 和 CSS 文件 目前我们有以下设置。

FileETag None ExpiresActive On

<IfModule mod_expires.c> ExpiresByType text/css "access plus 5 days" ExpiresByType text/javascript "access plus 5 days" ExpiresByType image/gif "access plus 5 days" ExpiresByType image/jpg "access plus 5 days" ExpiresByType image/png "access plus 5 days" ExpiresByType application/x-shockwave-flash "access plus 5 days" ExpiresByType application/x-javascript "access plus 5 days" AddType image/x-icon .ico ExpiresByType image/x-icon "access plus 5 days" </IfModule>

在这种情况下,如果我们有一个修补程序版本,我们必须要求最终用户清除他们的缓存,以便新文件可以从他们的身边反映出来,否则他们必须等到对象过期并自动刷新。

如果我们将其设置为低于对 Web 服务器的请求增加和 Web 服务器上的负载增加的值。

我想知道有没有什么机制。

1) 放置新文件时自动更新最终用户计算机上的新文件。

2) 设置文件夹级别而不是文件级别的过期。

谢谢

【问题讨论】:

  • 代码格式
  • 嗨斯图尔特,你能解释一下吗?
  • 对不起@user77243 - 我编辑了你的帖子,它询问了编辑的原因 - 我添加了“代码格式” - 我不知道为什么这是作为评论出现的:/

标签: apache http web http-headers webserver


【解决方案1】:

回复point 1)

我建议在 URL 级别使用版本控制。

mysite.com/lib/js.js?v=1mysite.com/lib/style.css?v=1(等等..等等..)

当您推出新版本时,将其更新为 v=x(等等)。

没有办法强制客户端刷新它的缓存,主要是因为所有浏览器的实现都不同(他们都必须实现这一点),这无疑会带来一些安全风险。

至于point 2),这个问题可能会有所帮助:

ServerOverflow - Apache: ExpiresByType per directory?

【讨论】:

  • 嗨 Stuart,我看到标签 被添加到 httpd.conf 文件中以使某些文件更快过期。您能否让我们知道这个 expire_fast 以天/小时表示什么。 1)如示例中,我们在下面看到 access plus et 到 60 分钟,在这种情况下,文件将在多长时间内过期 expire_fast。 2)在我们的例子中,如果 access plus 设置为 5 天,文件何时过期。 2)有什么办法可以快速设置过期值。
  • @user77243 看起来 expire_fast 只是一个目录,由配置设置为 60 分钟到期。 expire_fast 不是 apache 的东西,只是他们所谓的 dir。
  • 你可以调用目录 foobar 或 dir,或者任何你想要的,expire_fast 纯粹是他们称之为的名字
猜你喜欢
  • 2021-08-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-23
  • 1970-01-01
  • 2014-11-06
  • 2020-09-12
  • 1970-01-01
相关资源
最近更新 更多