Sudah mencoba ini? Harus bekerja di keduanya .htaccess
, httpd.conf
dan di VirtualHost
(biasanya ditempatkan di httpd-vhosts.conf
jika Anda telah memasukkannya dari httpd.conf Anda)
<filesMatch "\.(html|htm|js|css)$">
FileETag None
<ifModule mod_headers.c>
Header unset ETag
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
</ifModule>
</filesMatch>
100% Mencegah File dari di-cache
Ini mirip dengan bagaimana iklan google menggunakan header Cache-Control: private, x-gzip-ok = ""> untuk mencegah caching iklan oleh proxy dan klien.
Dari http://www.askapache.com/htaccess/using-http-headers-with-htaccess.html
Dan secara opsional tambahkan ekstensi untuk file templat yang Anda ambil jika Anda menggunakan ekstensi selain .html
untuk itu.
LoadModule headers_module lib/modules/mod_headers.so
<filesMatch "\.+">
atau<filesMatch ^>
Berdasarkan contoh di sini: http://drupal.org/node/550488
Berikut ini mungkin akan berfungsi di .htaccess
sumber
<IfModule mod_expires.c>
dan</IfModule>
.. jika mod_expires tidak diaktifkan, Anda akan mendapatkan kesalahan alih-alih arahan itu diam-diam diabaikan.Saya memiliki masalah yang sama, tetapi saya menemukan solusi yang bagus di sini: Hentikan caching untuk PHP 5.5.3 di MAMP
Pada dasarnya temukan file php.ini dan berikan komentar pada baris OPCache. Saya harap jawaban alternatif ini membantu orang lain juga.
sumber
Tanpa mod_expires akan lebih sulit untuk mengatur header kedaluwarsa pada file Anda. Untuk apa pun yang dihasilkan, Anda tentu dapat mengatur beberapa header default pada jawabannya, melakukan pekerjaan mod_expires seperti itu:
(diambil dari: Stack Overflow jawaban dari @brianegge , di mana solusi mod_expires juga dijelaskan)
Sekarang ini tidak akan berfungsi untuk file statis , seperti file javascript Anda. Sedangkan untuk file statis hanya ada apache (tanpa modul kedaluwarsa) antara browser dan file sumber. Untuk mencegah caching file javascript, yang dilakukan di browser Anda, Anda dapat menggunakan token acak di akhir ur js, sesuatu seperti
?rd=45642111
, sehingga url terlihat seperti:Jika url ini pada halaman dihasilkan oleh file PHP Anda bisa menambahkan bagian acak dengan PHP. Ini cara pengacakan url dengan hanya menambahkan parameter string kueri acak adalah hal dasar sampai pengaturan tanpa cache dari permintaan ajax jQuery misalnya. Browser tidak akan menganggap 2 url memiliki string kueri yang berbeda, dan tidak akan pernah menggunakan versi cache.
EDIT
Perhatikan bahwa Anda juga harus menguji mod_headers . Jika Anda memiliki mod_headers, Anda mungkin dapat mengatur header Expires secara langsung dengan kata kunci Header .
sumber
sumber