有时我们需要控制主页之类的网页过期时间。

但我们比如使用的是Chinacache的CDN,那要怎么样设计才能让他缓存我的内容.

当然,前提要先打开CDN中一个功能reload_into_ims on。这样用户发送过来no-cache也不怕了,因为这样会给给no-cache转成If-Modified-Since。所以我们写程序主要是对If-Modified-Since控制就好了。记的,缓存系统架构中计中最好是后端来控制,所以最好的方法是程序来管理过期。 呵,我只会php,就用php写一个,别的程序也是一样。
见我下面的程序,呵呵,5分钟过期。

<?php
$headers = apache_request_headers();
$client_time = (isset($headers['If-Modified-Since']) ? strtotime($headers['If-Modified-Since']) : 0);
$now=gmmktime();
$now_list=gmmktime()-60*5;

if ($client_time<$now and $client_time >$now_list){
header('Last-Modified: ‘.gmdate('D, d M Y H:i:s', $client_time).' GMT', true, 304);
exit(0);
}else{
header('Last-Modified: ‘.gmdate('D, d M Y H:i:s', $now).' GMT', true, 200);
}
?>

转载于:https://blog.51cto.com/richardzhu/196733

PHP控制网页过期时间的代码!相关推荐

  1. 网页背景颜色php代码怎么写,CSS控制网页背景颜色的代码

    我想大家常常为一些比较合适于自己的网页背景的图片而发愁吧,这个我想也是有的,因为这些图片不是太大就是太小,或者太乱,那么有没有办法让图片能合自己的主页的胃口呢?答案是肯定的. 想知道怎么来实现嘛,好吧 ...

  2. linux密码修改时间,linux 查看、修改用户及密码过期时间(示例代码)

    WARNING: Your password has expired. Password change required but no TTY available. 提示密码过期, 设置新用户密码的过 ...

  3. java控制订单过期时间_订单自动过期实现方案

    需求分析:24小时内未支付的订单过期失效. 解决方案被动设置:在查询订单的时候检查是否过期并设置过期状态. 定时调度:定时器定时查询并过期需要过期的订单. 延时队列:将未支付的订单放入一个延时队列中, ...

  4. php代码时间控制,PHP 网页过期时间的控制代码

    当然,前提要先打开CDN中一个功能reload_into_ims on.这样用户发送过来no-cache也不怕了.因为这样会给给no-cache转成If-Modified-Since .所以我们写程序 ...

  5. redistemplate hash 过期时间_完美!谈谈Java中时间控制的几种解决方案

    前言 需求是这样的,在与第三方对接过程中,对方提供了token进行时效性验证,过一段时间token就会失效.后台有定时任务在获取,但是偶尔会出现token失效,这是因为在获取的时候,定时任务正在跑,可 ...

  6. RabbitMq(十) 消息过期时间TTL介绍以及代码实现

    概述: 在rabbitmq中我们可以给消息设定过期时间LLT(Time to Live),在消息发送后过期时间段内未被消费,则系统会将其删除,被删除的消息将会进入死信队列.关于设置消息的过期时间有两种 ...

  7. session过期时间控制的一些常用方法

    来源:http://blog.csdn.net/luo_yifan/article/details/4659392 在一般系统登录后,都会设置一个当前session失效的时间,以确保在用户没有使用系统 ...

  8. mysql 验证码过期时间_简单的行为控制管理方法,自动登录,session定时验证码过期...

    public functionindex() {if(IS_POST) {//尝试登陆次数增加 behavior_function(__FUNCTION__, __CLASS__,1);}else{$ ...

  9. 网页中加入当前时间html,如何在网页中加入当前时间的代码

    首先在body区域加入:οnlοad="showtime()" 然后在需要显示时间的地方加入: 或者将id="clock"加入到其他标签中 最后在网页中加入以下 ...

最新文章

  1. git查看一个文件的历史记录
  2. Filter过滤不了Action的问题
  3. 2015年京东面试题
  4. 大数据产业不只是建设数据中心
  5. Alphabet Project Loon项目负责人半年再度易人
  6. Tcp连接arp协议详解
  7. 最新设备可利用积雪发电?UCLA研究出积雪式摩擦奈米发电机
  8. .NET 6新特性试用 | 异步流
  9. python 字典由值找键,从Python中的Dictionary中的值获取键
  10. python 手势检测和追踪_用kinect和python进行手势识别:嗯学习
  11. 为什么不断做迁移,那是在还技术债
  12. C#.Net工作笔记010---c#中的静态扩展方法_可动态给string等_添加共通方法好用
  13. ANSYS命令流——圆柱体网格划分
  14. 王道数据结构P40第一题,为什么直接去掉结点不会造成断链?
  15. PPT转换为视频_ppt2dvd-pro
  16. 基于SPCE061A的语音控制小车设计
  17. 软件测试---性能测试
  18. TypeScript后端http请求
  19. excel取消密码_取消excel工作簿的保护(无密码)
  20. 外地人如何在上海办准生证 或者 2016年准生证办理流程 不同版本

热门文章

  1. EMC -- Windows下卸载 Content Server
  2. Linux下如何判断磁盘类型,Linux下判断磁盘属于U盘、HDD盘或者SSD盘的方法
  3. FTP 编写 2:客户端与服务端的连接
  4. html5 xml文本编辑,简介XML文档的阅读与编辑
  5. linux oracle dblink,Oracle 创建 DBLink 的方法
  6. 如何用高德地图定位生成二维码_OSM地图本地发布如何生成各省市矢量地图
  7. BootStrap中Model模态框点击除了×号和关闭按钮外的其他区域不消失
  8. 单片机can通信可以接多少个设备_总结BMS上CAN收发器电路的几个要点
  9. java集合类练习_JAVA集合类练习
  10. java time 赋予时间_java.time.OffsetTime