当前位置:首页 » 文件管理 » 怎么禁用aspx缓存

怎么禁用aspx缓存

发布时间: 2025-01-20 01:00:50

⑴ asp.net aspx文件 缓存设定问题

1.概念

Cache-control用于控制HTTP缓存(在HTTP/1.0中可能部分没实现,仅仅实现了Pragma: no-cache)

数据包中的格式:

Cache-Control: cache-directive

cache-directive可以为以下:

request时用到:

| "no-cache"
| "no-store"
| "max-age" "=" delta-seconds
| "max-stale" [ "=" delta-seconds ]
| "min-fresh" "=" delta-seconds
| "no-transform"
| "only-if-cached"
| "cache-extension"

response时用到:

| "public"
| "private" [ "=" <"> field-name <"> ]
| "no-cache" [ "=" <"> field-name <"> ]
| "no-store"
| "no-transform"
| "must-revalidate"
| "proxy-revalidate"
| "max-age" "=" delta-seconds
| "s-maxage" "=" delta-seconds
| "cache-extension"

部分说明:
根据是否可缓存分为
Public 指示响应可被任何缓存区缓存。
Private 指示对于单个用户的整个或部分响应消息,不能被共享缓存处理。这允许服务器仅仅描述当用户的
部分响应消息,此响应消息对于其他用户的请求无效。
no-cache 指示请求或响应消息不能缓存(HTTP/1.0用Pragma的no-cache替换)
根据什么能被缓存
no-store 用于防止重要的信息被无意的发布。在请求消息中发送将使得请求和响应消息都不使用缓存。
根据缓存超时
max-age 指示客户机可以接收生存期不大于指定时间(以秒为单位)的响应。
min-fresh 指示客户机可以接收响应时间小于当前时间加上指定时间的响应。
max-stale 指示客户机可以接收超出超时期间的响应消息。如果指定max-stale消息的值,那么客户机可以
接收超出超时期指定值之内的响应消息。
Expires 表示存在时间,允许客户端在这个时间之前不去检查(发请求),等同max-age的
效果。但是如果同时存在,则被Cache-Control的max-age覆盖。
格式:
Expires = "Expires" ":" HTTP-date
例如
Expires: Thu, 01 Dec 1994 16:00:00 GMT (必须是GMT格式)

2.应用
通过HTTP的META设置expires和cache-control
<meta http-equiv="Cache-Control" content="max-age=7200" />
<meta http-equiv="Expires" content="Mon, 20 Jul 2009 23:00:00 GMT" />
上述设置仅为举例,实际使用其一即可。这样写的话仅对该网页有效,对网页中的图片或其他请求无效,并不会做任何cache。
这样客户端的请求就多了,尽管只是检查Last-modified状态的东西,但是请求一多对浏览速度必定有影响。
如果要对文件添加cache可以通过apache的mod_expire模块,写法为
<IfMole mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 days"
</IfMole>
记得ExpiresActive设为On,我起先没设置On,似乎怎样YSlow都查不到缓存机制。这样添加的话就是默认所有的。
如果要针对个别MIME类型则可以:
ExpiresByType image/gif "access plus 5 hours 3 minutes"
见 Apache Mole mod_expires
另外,当点击浏览器上的刷新,客户端发送的请求中均是max-age=0,表示validate操作,发送请求到服务器
要求检查cache,再更新cache,一般得到的是304 Not Modified,表示没变动。

Response.CacheControl = "public";
Response.Expires = 60 * 12;

⑵ JS清除IE浏览器缓存的方法

本文为大家详细介绍下js中自动清除ie缓存的几种方法 大家可以根据自己的需求自由选择适合自己的 希望对大家学习js有所帮助

js中自动清除ie缓存方法 — 常用 对于动态文件 比如 index asp?id= 或者 index aspx?id= 相信有经验的程序员都知道怎样禁止浏览器缓存数据了 但是对于静态文件(css jpg gif等等) 在什么场合下面我们需要禁止浏览器缓存他们 怎么做? 方法一 Dojo中我们可以用简单的方法完成 在dojo xhrGet(包括post)等方法中都包含preventCache属性 此属性的含义 “默认为启用浏览器缓存 否则将通过自动增加不同的参数来确保浏览器缓存失效” 我们只袜租要把此属性赋值为 “true”即可 方法二 document write(" 其中 ver= 的 就是版本号 一般都是采用 CVS 或其他工具生成的开发版本号 这样真正做到了应该缓存的时候缓存静态告茄兆文件 当版本有更新的时候从获取最新的版本 并更新缓存 对于图像 来有效利用和更新缓存 js清除浏览器缓存 二 为 了减小浏览器与服务器之间网络传输压力 往往对静态文件 如js css 修饰的图片做cache 也就是给这些文件的HTTP响应头加入 Expires和Cache Control参数 并指定缓存时间 这样一定时间内浏览器就不会给服务器发出任何的HTTP请求(除了强制刷新) 即使在 这段时间内服务器的js或css或图片文件已经更新多次 但浏览器的数据依然是原来最能初cache的旧数据 有没有办法让浏览器拿到已经修改后的最新数 据呢? 有 方法是用ajax请求服务器最纳岁新文件 并加上请求头If Modified Since和Cache Control 如下:

复制代码 代码如下: $ ajax({ type: "GET" url: "static/cache js" dataType: "text" beforeSend :function(xmlHttp){ xmlHttp setRequestHeader("If Modified Since" " "); xmlHttp setRequestHeader("Cache Control" "no cache"); } });

这里用了jquery 这样浏览器就会把最新的文件替换掉本地旧文件 当然 这里还一个问题就是js必须知道服务器更新了那个js css 图片 利用cookie和时间版本应该可以解决 jquery自从 开始就有ifModified和cache参数了 不用自己加header ifModified Boolean Default: false Allow the request to be successful only if the response has changed since the last request This is done by checking the Last Modified header Default value is false ignoring the header cache Boolean Default: true Added in jQuery if set to false it will force the pages that you request to not be cached by the browser

复制代码 代码如下: lishixin/Article/program/Java/JSP/201311/20378

⑶ C#服务器ashx页面功能如何避免恶意攻击形式充值怎样避免

在前端增加一个秘钥生成器,首先前端要验证打开是否在微信内打开,其次采用特殊算法生成一个秘钥,后端也用相同算法来解析秘钥是否正确,在安全点可以把前端生成秘钥的代码进行混淆避免被发现,或者隐藏的好些。

热点内容
phpsession跳转页面跳转 发布:2025-01-20 03:47:20 浏览:540
深圳解压工厂 发布:2025-01-20 03:41:44 浏览:690
linux字体查看 发布:2025-01-20 03:41:30 浏览:742
pythonextendor 发布:2025-01-20 03:40:11 浏览:199
为什么安卓手机储存越来越少 发布:2025-01-20 03:40:07 浏览:925
算法和人性 发布:2025-01-20 03:28:31 浏览:473
软件编程1级 发布:2025-01-20 03:19:39 浏览:952
嫁个编程男 发布:2025-01-20 02:51:39 浏览:933
挂劳文件夹 发布:2025-01-20 02:44:22 浏览:521
写编程英文 发布:2025-01-20 02:37:50 浏览:16