为什么我的URL不能被缓存

为什么我的URL不能被缓存,第1张

其次您需要在缓存规则配置里进行缓存的配置。如果没有对某个路径配置时Webluker默认不缓存。即:您检测的这个文件的路径在 /path1 ,而您在缓存规则配置里设置了只缓存 /path2 的内容 ;或者是您检测的这个文件的扩展名是 .jpg ,而您在缓存规则配置里的扩展名一栏没有 .jpg 这个扩展名。这两种配置都会导致URL不能被缓存。

可以使用服务器端代码:

Response.Buffer=true

Response.ExpiresAbsolute=System.DateTime.Now.AddSeconds(-1)

Response.Expires=0

Response.CacheControl="no-cache"

也可以使用客户端脚本:

<head>

<meta http-equiv="Expires" CONTENT="0">

<meta http-equiv="Cache-Control" CONTENT="no-cache">

<meta http-equiv="Pragma" CONTENT="no-cache">

</head>

HttpCachePolicy见http://msdn.microsoft.com/zh-cn/library/system.web.httpcachepolicy.aspx。

图片仍缓存的话,采用以下方法试试,即在图片后边追加个随机数

Random random = new Random()

Image1.ImageUrl = "PicShow/hehe.gif?temp=" + random

浏览器会认为你的图片2次的参数不一样即两个不同的图片,故会重新从服务器端读取图片,而不是缓存中的老图片。

若刷新过快的话,可能出现随机数会不变。

可以将创建随机数实例那块改为下面这种:

Random random = new Random(Guid.NewGuid().GetHashCode())


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/636375.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-07-19
下一篇2023-07-19

发表评论

登录后才能评论

评论列表(0条)

    保存