में काम करेंगे mod_expires के बिना यह आपकी फ़ाइलों पर समाप्ति हेडर स्थापित करने के लिए कठिन होगा। कुछ भी उत्पन्न के लिए आप निश्चित रूप से, इस सवाल का जवाब पर कुछ डिफ़ॉल्ट हेडर सेट कर सकते हैं उस तरह mod_expires का काम कर रहे हैं:
अब इस जीत:
<?php header('Expires: '.gmdate('D, d M Y H:i:s \G\M\T', time() + 3600)); ?>
(Stack Overflow answer from @brianegge, जहां mod_expires समाधान भी समझाया गया है से लिया गया) स्थिर फ़ाइलों के लिए काम नहीं करते हैं, जैसे आपकी जावास्क्रिप्ट फाइलें। स्थिर फ़ाइलों के लिए ब्राउज़र और स्रोत फ़ाइल के बीच केवल अपाचे (बिना किसी समाप्ति मॉड्यूल के) है।
<script type="texte/javascript" src="my/url/myjs.js?rd=4221159546">
इस हैं: जावास्क्रिप्ट फ़ाइलें, जो आपके ब्राउज़र पर किया जाता है की कैशिंग रोकने के लिए, यदि आप ऐसा यूआरएल की तरह लग रहा js url के अंत, ?rd=45642111
की तरह कुछ पर एक यादृच्छिक टोकन उपयोग कर सकते हैं, पृष्ठ पर यूआरएल एक PHP फ़ाइल द्वारा उत्पन्न होता है जिसे आप आसानी से PHP के साथ यादृच्छिक भाग जोड़ सकते हैं। यादृच्छिक क्वेरी स्ट्रिंग पैरामीटर को बस जोड़कर यूआरएल को यादृच्छिक करने का यह तरीका उदाहरण के लिए AJAX jQuery अनुरोध की मूल चीज़ अपॉन कै-कैश सेटिंग है। ब्राउजर कभी भी 2 यूआरएल पर विचार नहीं करेगा, जिसमें अलग-अलग क्वेरी स्ट्रिंग समान होंगी, और कभी भी कैश किए गए संस्करण का उपयोग नहीं करेंगे।
संपादित
ध्यान दें कि आप एएलओ mod_headers का परीक्षण करना चाहिए। यदि आपके पास mod_headers हैं तो आप शायद शीर्षलेख कीवर्ड के साथ एक्सपियर हेडर सेट कर सकते हैं।
धन्यवाद, यह एक .htaccess फ़ाइल में बहुत अच्छी तरह से काम करता है। जब मैं हेडर का निरीक्षण करता हूं तो मैं कैश नियंत्रण विकल्पों को देख सकता हूं और मेरी फाइलें अनुरोध के बीच 304 के बजाय http 200 के साथ दिखाई दे रही हैं, बस मुझे जो चाहिए था। – dmck
LoadModule कमांड को जोड़ने के लिए मत भूलना। 'LoadModule headers_module lib/मॉड्यूल/mod_headers.so' – Spen
यह अपाचे/2.4.12 (उबंटू) – Sarath