Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在asp.net中设置映像过期日期_Asp.net_Iis 7_Image_Caching - Fatal编程技术网

在asp.net中设置映像过期日期

在asp.net中设置映像过期日期,asp.net,iis-7,image,caching,Asp.net,Iis 7,Image,Caching,在visual Studio中使用asp.net,当我有主机时使用IIS7 我有一个文件夹的图标,很少会改变,并在每个页面上使用。是否有一种方法可以将某个目录设置为每2小时左右过期一次,以便减少服务器收到的请求量?您可以在IIS中这样做。如果您使用的是IIS 7,则可以在web.config中添加标题。它位于system.webServer部分 <staticContent> <clientCache httpExpires="Sun, 29 Mar 2020 00:0

在visual Studio中使用asp.net,当我有主机时使用IIS7


我有一个文件夹的图标,很少会改变,并在每个页面上使用。是否有一种方法可以将某个目录设置为每2小时左右过期一次,以便减少服务器收到的请求量?

您可以在IIS中这样做。如果您使用的是IIS 7,则可以在web.config中添加标题。它位于system.webServer部分

<staticContent>
    <clientCache httpExpires="Sun, 29 Mar 2020 00:00:00 GMT" cacheControlMode="UseExpires" />
</staticContent>

这将导致所有静态内容都将expires HTTP头设置为2020年。静态内容是指未通过ASP.NET引擎提供的任何内容,如图像、脚本文件和样式表

或者要使用相对过期,请使用以下命令:

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


这将导致所有静态内容的expires HTTP头设置为2天。

我怎么说在4小时后或每天午夜后返回?我喜欢假日主题等。如果你想有能力在任何时候改变图像,有2个选项。1) 使用上述方法,在更改图像时更改URL,并在假期结束时重新更改图像。2) 将过期日期设置得更小。这看起来像是固定日期。我不能将其设置为相对或使用代码来更改它吗?我添加了如何使其相对于我的答案作为一个信息:此设置似乎对内置开发服务器(至少VS 2010 SP1)没有影响。如果对它不起作用的原因有疑问,请咨询IIS。