บางครั้งเราจำเป็นต้องควบคุมเวลาหมดอายุของหน้าเว็บเช่นหน้าแรก แต่ตัวอย่างเช่น หากเราใช้ CDN ของ Chinacache เราจะออกแบบมันอย่างไรเพื่อให้สามารถแคชเนื้อหาของฉันได้
แน่นอนว่าข้อกำหนดเบื้องต้นคือการเปิดฟังก์ชัน reload_into_ims ใน CDN ด้วยวิธีนี้ ผู้ใช้จะไม่กลัว การส่ง no-cache เนื่องจากสิ่งนี้จะแปลง no-cache เป็น If-Modified-Since ทางที่ดีที่สุดคือใช้โปรแกรมจัดการการหมดอายุ อ๋อ ผมรู้แค่ PHP ครับ เลยจะเขียนเป็น PHP เหมือนกัน
ดูโปรแกรมผมด้านล่างครับ 555 จะหมดอายุใน 5 นาที
รหัส:
<?php
$headers = apache_request_headers();
$client_time = (isset($headers['If-Modified-Since']) ? strtotime($headers['If-Modified-Since']) : 0);
$ตอนนี้=gmmktime();
$now_list=gmmktime()-60*5;
ถ้า ($client_time<$ตอนนี้ และ $client_time >$now_list){
header('แก้ไขล่าสุด: '.gmdate('D, d MYH:i:s', $client_time).' GMT', true, 304);
ออก(0);
}อื่น{
header('แก้ไขล่าสุด: '.gmdate('D, d MYH:i:s', $now).' GMT', จริง, 200);
-
-