php - कैश छवियों के लिए ब्राउज़र को बल दें




caching http-headers (2)

मैं छवियों का निर्माण कर रहा हूं और ब्राउज़र को हमेशा के लिए उन्हें कैश करने के लिए चाहता हूं, लेकिन इसके बजाय ब्राउज़र उन्हें कैश नहीं करते। यह मेरा php कोड है


header('Content-type:'.$file->content_type);
header('Expires: Thu, 15 Apr '.(date('Y')+10).' 20:00:00 GMT');
header('Content-Disposition: attachment; filename="'.$file->file_name.'"');
echo(file_get_contents($model_files->files_path.$file->md5.$model_files->seprator.$file->file_name));

और ये प्रतिक्रिया हैडर हैं जो मैं ब्राउज़र में रखता हूं।

Date:            Thu, 02 Jun 2011 12:56:56 GMT
Server:          Apache mod_fcgid/2.3.6 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635
X-Powered-By     PHP/5.2.15
Cache-Control    no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma           no-cache
Expires          Thu, 15 Apr 2021 20:00:00 GMT
Content-Length   321823
Keep-Alive       timeout=5, max=100
Connection       Keep-Alive
Content-Type     image/png

मैं तिथि, कैश-कंट्रोल और प्राग की स्थापना नहीं कर रहा हूं, लेकिन उन्हें जवाब में रखता हूं।

मुझे पता है कि मैं उन्हें अधिलेखित कर सकता हूं लेकिन ईमानदारी से मुझे बिल्कुल पता नहीं है कि कौन सा मान सेट करना चाहते हैं।


आप उपयोग कर सकते हैं:

header( 'Cache-Control: max-age=37739520, public' );

आप प्राग्मा को भी ओवरराइट करने का प्रयास कर सकते हैं, लेकिन मुझे लगता है कि कैसा-कंट्रोल प्रदाता जारी होने पर इन दिनों ब्राउजर केवल प्रगम की उपेक्षा करते हैं।

header( 'Pragma: public' );







browser