Vì vậy, nó trông càng tốt .... cú pháp tập tin .htaccess là:
Header unset Last-Modified
FileETag none
ExpiresActive On
ExpiresDefault "access plus 1 years"
này sẽ tắt ETags và bật Cache-Control: max-age
Sau đó đặt này. file .htaccess trong thư mục và tất cả các file (bao gồm cả đó là thư mục con sẽ được lưu trữ trong vòng 1 năm.
tôi quyết định đặt tất cả nội dung bộ nhớ cache có thể tôi dưới một thư mục gốc duy nhất và chỉnh sửa httpd.conf
như
<Directory "C:\somedir\cache">
Header unset Last-Modified
FileETag none
ExpiresActive On
ExpiresDefault "access plus 1 years"
</Directory>
Tôi vẫn đang trong quá trình thử nghiệm điều này. Tôi chỉ hy vọng điều này không tắt Etags cho phần còn lại của trang web. Cho đến nay có vẻ như nó đang hoạt động như kế hoạch.
UPDATE (sau 6 tháng):
Thiết lập ExpiresDefault và cho phép e-thẻ là điều tốt nhất để làm.
trong httpd.conf:
<Directory "C:\somedir\cache">
ExpiresActive On
ExpiresDefault "access plus 1 year"
</Directory>
Hãy chắc chắn rằng "somedir" là bên trong thư mục gốc apache (như htdocs).
Cho phép thẻ điện tử là tốt vì sau 1 năm, trình duyệt sẽ xác thực lại tệp bằng cách chuyển thẻ điện tử. Máy chủ web sẽ gửi lại 304 - Không được sửa đổi và đặt lại độ tuổi tối đa thành 1 năm. Điều này rất hiệu quả.
Tất cả trong tất cả, bạn có thể xem tệp nhật ký apache và thấy rằng các mục trong/cache dir được bắt đầu được phân phát một lần.
Lưu ý: Tôi thấy rằng cài đặt Header append Cache-Control "public"
là ok nếu bạn muốn.
Version cuối cùng:
Dưới đây là phiên bản cuối cùng: (chỉ cần thêm này ở dưới cùng của httd.conf)
<Directory "C:\somedir\cache"">
ExpiresActive On
ExpiresDefault "access plus 1 year"
Header append Cache-Control "public"
</Directory>
Kiểm tra header nên tiết lộ này:
Accept-Ranges:bytes
Cache-Control:max-age=31536000, public
Connection:Keep-Alive
Content-Language:en
Content-Length:746
Content-Type:text/css
Date:Thu, 29 May 2014 15:23:50 GMT
ETag:"240000000add63-2ea-4f4086d72ad01"
Expires:Fri, 29 May 2015 15:23:50 GMT
Keep-Alive:timeout=40, max=200
Last-Modified:Fri, 07 Mar 2014 18:28:59 GMT
này sẽ:
- Đặt max-age trong vòng 1 năm (dài nhất đề nghị)
- Gửi hết hạn thẻ 1 năm
- Gửi Etag, vì vậy sau 1 năm trình duyệt sẽ thực hiện xác thực etag
- Cho phép các thiết bị/dịch vụ lưu bộ nhớ đệm trung gian biết rằng chúng có thể lưu trữ tệp trong 1 năm.