2012-06-26 15 views
6

Tôi chạy Google Page Speed trên ứng dụng web của chúng tôi để phân tích và tối ưu hóa trang web của chúng tôi.định cấu hình Tomcat để tận dụng bộ đệm ẩn của trình duyệt?

Một trong những mặt hàng dưới Web Performance Best Practices được liệt kê trong Speed ​​Trang nói "Để tận dụng những lợi ích đầy đủ của bộ nhớ đệm một cách nhất quán trên tất cả các trình duyệt, chúng tôi khuyên bạn nên cấu hình máy chủ web của bạn để thiết lập một cách rõ ràng tiêu đề bộ nhớ đệm và áp dụng chúng vào tất cả các tài nguyên tĩnh có thể lưu vào bộ nhớ cache, không chỉ là một tập con nhỏ (chẳng hạn như hình ảnh). không tĩnh và không được coi là có thể lưu vào bộ nhớ cache ".

Làm cách nào để định cấu hình tomcat để đạt được kết quả tương tự? Tôi biết nó có thể được thực hiện thông qua Bộ lọc bằng cách đặt một số tiêu đề HTTP nhưng chúng ta có thể làm điều đó mà không cần chạm vào mã chỉ bằng cấu hình không?

Chỉnh sửa: Chỉ để biết thông tin chúng tôi sử dụng JSF 1.2 mặc dù tôi nghĩ điều này không liên quan trong ngữ cảnh của câu hỏi này.

Trả lời

9

Nếu bạn đang sử dụng Tomcat7, có bộ lọc tích hợp cho điều đó. http://tomcat.apache.org/tomcat-7.0-doc/config/filter.html#Expires_Filter

Chúng tôi sử dụng URlRewriteFilter tuyệt vời để thực hiện việc này. Không có thay đổi mã, chỉ cần cấu hình để web.xml, đó là tất cả. Liên kết và quy tắc bên dưới.

http://tuckey.org/urlrewrite/

<rule> 
     <from>^.*\.(js|css|gif)$</from> 
     <set type="expires">6 hours</set> 
    </rule>