“过期” HTTP标头中的静态内容? 如何(“Expires” in http header f

2019-06-23 18:52发布

什么是补充的最佳途径“过期” HTTP标头中的静态内容? 例如。 图片,CSS,JS

Web服务器是IIS 6.0; 语言是经典ASP

Answer 1:

你可以尝试这样的事:

@ECHO OFF 
REM ---------------------------------------------------------------------------
REM Caching - sets the caching on static files in a web site
REM syntax 
REM     Caching.CMD 1 d:\sites\MySite\WWWRoot\*.CSS
REM 
REM   %1 is the WebSite ID
REM   %2 is the path & Wildcard - for example, d:\sites\MySite\WWWRoot\*.CSS
REM   _adsutil is the path to ADSUtil.VBS
REM ---------------------------------------------------------------------------

SETLOCAL

SET _adsutil=D:\Apps\Scripts\adsutil.vbs

FOR %%i IN (%2) DO (
  ECHO Setting Caching on %%~ni%%~xi
  CSCRIPT %_adsutil% CREATE W3SVC/%1/root/%%~ni%%~xi "IIsWebFile"
  CSCRIPT %_adsutil% SET    W3SVC/%1/root/%%~ni%%~xi/HttpExpires "D, 0x69780"
  ECHO.
)

其设置在Web根每个CSS文件,以5天的缓存值,然后像这样运行它:

Caching.CMD 1 \site\wwwroot\*.css
Caching.CMD 1 \site\wwwroot\*.js
Caching.CMD 1 \site\wwwroot\*.html
Caching.CMD 1 \site\wwwroot\*.htm
Caching.CMD 1 \site\wwwroot\*.gif
Caching.CMD 1 \site\wwwroot\*.jpg

那种痛苦,但是可行的。

顺便说一句 - 以获取HttpExpires值,在GUI中设置的值,然后运行

AdsUtil.vbs ENUM W3SVC/1/root/File.txt

得到你所需要的实际值



Answer 2:

我觉得这是你以后,它在IIS管理器中的HTTP头内容过期。 我喜欢用〜/资源文件夹下露了静态内容和设置对特定文件夹到期的模式有一个比应用程序的其它部分更长的寿命。

下面是完整的文章的链接: IIS 6.0 F1:网站属性- HTTP头选项卡



Answer 3:

对于其他人从谷歌来:这不会在IIS6工作 ,但在7及以上的作品。

在你的web.config:

<staticContent>
  <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="7.00:00:00" />
</staticContent>


Answer 4:

在IIS管理你可以将它设置为每个文件类型也可以(动态的像C ++)做到这一点的代码。 之后,你有它设置,您需要检查与像Mozilla Firefox浏览器+动态组头插件工具输出头-或者你可以用这样一个基于Web的工具http://www.httpviewer.net/



Answer 5:

我不知道如果这是你在找什么,但它确实让我的网页被缓存。

<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-store">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="0">
<META HTTP-EQUIV="Cache-Control" CONTENT="max-age=0">

我从这些线路上的一篇文章,我不再有一个参考。



Answer 6:

可怕的解决方案,第一个命令与ADSUTIL创建将失败,错误-2147024713(0x800700B7),因为你试图在文件创建已经存在。

谢谢。



文章来源: “Expires” in http header for static content? how-to