Tôi biết tôi đang hồi sinh một câu hỏi cổ, nhưng hôm nay tôi đã cố gắng giải quyết vấn đề này và có giải pháp thay thế. Toggling bộ nhớ đệm khi tôi muốn thử nghiệm đã không thực sự chấp nhận được đối với tôi, và như những người khác đã đề cập, làm mới khó khăn (ctrl + shift + r) không phải lúc nào cũng hoạt động.
Thay vào đó, tôi đã lựa chọn để đặt sau đây trong tập tin vhost.conf của tôi (cũng có thể được thực hiện trong .htaccess) trên môi trường dev của tôi:
<FilesMatch "\.(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>
Về môi trường dev của tôi, điều này đảm bảo rằng js và css luôn được truy xuất. Ngoài ra nó không ảnh hưởng đến phần còn lại của trình duyệt của tôi, và nó cũng làm việc cho tất cả các trình duyệt, do đó, thử nghiệm trong chrome/tức là vv cũng dễ dàng.
Tìm thấy đoạn mã ở đây, một số thủ thuật apache tiện dụng khác như: http://www.askapache.com/htaccess/using-http-headers-with-htaccess.html#prevent-caching-with-htaccess
Để chắc chắn rằng khách hàng của tôi luôn luôn nhìn thấy phiên bản mới nhất về sản xuất, chúng tôi tăng chuỗi truy vấn trên js bao gồm trên mỗi lần cập nhật, tức là
jquery.somefile.js?v=0.5
Điều này buộc các trình duyệt khách hàng của tôi để cập nhật bộ nhớ cache của địa phương khi họ nhìn thấy một chuỗi truy vấn mới, nhưng sau đó lưu trữ các bản sao mới cho đến khi các tập tin được cập nhật một lần nữa
Nguồn
2011-07-13 04:21:02
ý của bạn là nhập about: config và set. Bạn có nghĩa là dán "about: config network.http.use-cache = false" vào thanh địa chỉ? – PositiveGuy
@CoffeeAddict, bạn nhập "about: config" vào thanh địa chỉ. Từ đó bạn có thể tìm kiếm "network.http .use-cache "thiết lập và thay đổi giá trị của nó thành false –
đã nhận được nó, cảm ơn rất nhiều – PositiveGuy