หากไม่มี mod_expiresจะเป็นการยากที่จะตั้งค่าส่วนหัวการหมดอายุในไฟล์ของคุณ สำหรับสิ่งใดก็ตามที่สร้างขึ้นคุณสามารถตั้งค่าส่วนหัวเริ่มต้นให้กับคำตอบได้โดยทำหน้าที่ mod_expires ดังนี้:
<?php header('Expires: '.gmdate('D, d M Y H:i:s \G\M\T', time() + 3600)); ?>
(นำมาจาก: คำตอบ Stack Overflow จาก @brianeggeซึ่งโซลูชัน mod_expires ได้อธิบายไว้ด้วย)
ตอนนี้สิ่งนี้จะไม่ทำงานสำหรับไฟล์คงที่เช่นไฟล์ javascript ของคุณ สำหรับไฟล์คงที่มีเพียง apache (ไม่มีโมดูลการหมดอายุ) ระหว่างเบราว์เซอร์และไฟล์ต้นฉบับ เพื่อป้องกันการแคชไฟล์ javascript ซึ่งกระทำบนเบราว์เซอร์ของคุณคุณสามารถใช้โทเค็นแบบสุ่มที่ส่วนท้ายของ js url คล้ายกับ?rd=45642111
ดังนั้น URL จึงมีลักษณะดังนี้:
<script type="texte/javascript" src="my/url/myjs.js?rd=4221159546">
หาก URL นี้ในหน้าถูกสร้างขึ้นโดยไฟล์ PHP คุณสามารถเพิ่มส่วนที่สุ่มด้วย PHP ได้ วิธีการสุ่ม url ด้วยการต่อท้ายพารามิเตอร์สตริงการสืบค้นแบบสุ่มนี้คือการตั้งค่าพื้นฐานที่ไม่ใช่การตั้งค่าแคชของคำขอ ajax jQuery เบราว์เซอร์จะไม่พิจารณา 2 url ที่มีสตริงการสืบค้นที่แตกต่างกันและจะไม่ใช้เวอร์ชันแคช
แก้ไข
โปรดทราบว่าคุณควรทดสอบmod_headersด้วย หากคุณมี mod_headers คุณสามารถตั้งค่าส่วนหัว Expires ได้โดยตรงด้วยคำหลักHeader