Có cách nào để xác định hoặc buộc tệp CSS được lưu vào bộ nhớ cache nếu người dùng đang điều hành một tệp cũ không?Force CSS Recache
Trả lời
Cách chắc chắn nhất để đảm bảo rằng mọi người tải lại tệp mới của bạn là thay đổi URL của nó. Một cách hợp lý để làm điều này mà không thực sự đổi tên nó là để tack trên một chuỗi ngẫu nhiên:
<link rel='stylesheet' href='/mystyles.css?random=87365835'>
Đó là sử dụng một cái búa tạ để crack một hạt, và bỏ qua tất cả các cơ chế HTTP mà tồn tại để làm điều này, nhưng nó sẽ hoàn toàn làm việc ở khắp mọi nơi, trong khi các kỹ thuật khác đều phải cẩn thận.
Chỉnh sửa: @jitter: Bạn không phải thay đổi URL tự động cho mọi yêu cầu - bạn có thể đặt nó trên dấu thời gian của tệp CSS hoặc thậm chí chỉ thay đổi bằng tay khi bạn muốn đảm bảo CSS được tải lại.
Bạn có thể thử chỉnh sửa etags server: http://developer.yahoo.com/performance/rules.html#etags
Nhưng phương pháp ưa thích có lẽ là để đổi tên tập tin CSS của bạn, chẳng hạn như với ngày hoặc số xây dựng, do đó người dùng sẽ luôn có mới nhất.
Kiểm tra giải pháp này thay vì sử dụng xx.css? Rand = 213213213
What is an elegant way to force browsers to reload cached CSS/JS files?
Hoặc google cho "tự động phiên bản" cộng thêm javascript hoặc css. Hoặc "phiên bản nội dung tự động"
Phương thức này sử dụng phương pháp tự động thay đổi đường dẫn của phần URL bằng cách thêm các biến nhận.
- 1. "Force Reflow" trong quá trình chuyển đổi CSS trong Bootstrap
- 2. Force div để cuộn nếu văn bản tràn HTML/CSS?
- 3. Force scrollbar to bottom
- 4. Force install.packages()
- 5. Force CherryPy Child Threads
- 6. Force destructors ảo? C++
- 7. C# Force Form Focus
- 8. Force django cam kết
- 9. HTML & CSS - Force Div> Span> Span trên cùng một dòng
- 10. Hoàn tác SVN xóa ./* --force
- 11. Tải xuống tệp Codeigniter Force
- 12. "Force" làm gì trong Uncrustify?
- 13. Force .change() để chạy - jQuery
- 14. Force div tuyệt đối để nghe đệm của cha mẹ?
- 15. Force truy vấn phương tiện truyền thông được áp dụng
- 16. Force Mercurial luôn sử dụng --subrepos
- 17. Brute force 7z kiểm tra mật khẩu
- 18. Visual C++ 'Force Bao gồm' tùy chọn
- 19. Phát hiện ngôn ngữ Brute-Force
- 20. WPF - Force ShowDialog để trả lại
- 21. force php strtotime để sử dụng UTC
- 22. Force UIView/UIVIewChuyển hướng điều khiển
- 23. Force sơn lại sau khi nhấn nút
- 24. Force MKMapView viewForAnnotation để cập nhật
- 25. force DOM redraw với javascript theo yêu cầu
- 26. Force vẽ của một điều khiển WPF trong bộ nhớ
- 27. C/C++/C# Cửa sổ Force nằm ở trên cùng
- 28. EGit trên Eclipse: Làm thế nào để git push --force?
- 29. Force Tải xuống tệp PDF, tệp bị hỏng
- 30. Force đối số duy nhất trong scala varargs
đây là một cách tiếp cận phổ biến - xem thêm http://stackoverflow.com/questions/438821/what-does-do-in-a-css-link –
nhưng điều này đặt tải nặng trên máy chủ của bạn lúc này khách hàng tải css everytime như? random = xxx là differnet mọi lúc. Vì các trình duyệt không được phép lưu các url bằng các biến (mặc dù IE và FF thực hiện) – jitter
Điều đó không có nghĩa là phải làm việc. Trình duyệt hiểu URL và không nên lưu bộ nhớ cache? Asdasd = adssad. – jitter