静态页,asp页,jsp页,php页不缓存或访问后立即过期的处理方法

本文描述了一个关于文件上传和下载过程中出现的缓存问题及解决方案。当用户重新访问上传或下载页面时,由于缓存的存在导致无法正确获取用户ID,进而影响了URL的正确性。文章提供了针对不同类型的页面(如静态页、ASP页、JSP页和PHP页)的缓存禁用方法。

this question also from abriza project.

在做文件的upload和download的时候遇到的问题.

The question description:

在文件的上传下载模块,第一次访问过去,upload和download都是没有问题的.

关闭当前页,在此链接过去,问题出现了,当前的userId始终没办法拿得到.因为当前的信息,网页并没有从servlet中拿,而是直接从session中拿的.

所以我upload和download的url就会发生变化了.

ex:....../downloadFile/;jsessionid='123456789'

所以就出现了问题.解决方案:禁用缓存或当前页访问后立即过期

不同种类的页面处理方案如下:

#1.静态页

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

#2.asp页 

<%
Response.Buffer=true
Response.CacheControl="no-cache"         禁止代理服务器缓存本页面
Response.Expires=-1000                        让页面立即过期(这儿最好设置一个绝对值较大的负数)
%>

#3.jsp页

<%
if (request.getProtocol().compareTo("HTTP/1.0")==0)
      response.setHeader("Pragma","no-cache");
if (request.getProtocol().compareTo("HTTP/1.1")==0)
      response.setHeader("Cache-Control","no-cache");
response.setDateHeader("Expires",0);
%>

#4.php页

<?php
    header ("Cache-Control: no-cache, must-revalidate");
    header ("Pragma: no-cache");
?>

 

jack.li

2011.12.29.pm

Abriza project

转载于:https://www.cnblogs.com/jackxlee/archive/2011/12/29/2306084.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值