2010-07-02 61 views
10

Tốc độ trang của Google cho biết.App Engine - Cách đặt tiêu đề "Thay đổi: Chấp nhận mã hóa" cho các tệp tĩnh

Các tài nguyên có nén công khai khả năng lưu nhớ sau đây cần có một "Vary: Accept-Encoding" tiêu đề:

cho css của tôi và các file js.

Tôi làm cách nào để đặt công cụ ứng dụng của Google thực hiện việc này?

+0

vì, hễ ai muốn thấy điều này thực hiện xin vui lòng sao vấn đề này http: //code.google.com/p/googleappengine/issues/detail?id=3442 –

+0

@ x64igor Không phải là tiêu đề cho các tệp tĩnh mà bạn đang yêu cầu? Điều này có thể xảy ra kể từ 1.7.0: https://developers.google.com/appengine/docs/python/config/appconfig#Static_Directory_Handlers. – schuppe

Trả lời

2

Google App Engine cố gắng phân phối compressed content khi có thể. Vì vậy, bạn không cần phải làm bất cứ điều gì miễn là khách hàng theo các hướng dẫn tại liên kết.

+2

'Vary: Accept-Encoding' cho proxy biết tài nguyên nên được lưu trữ như thế nào. Từ http://code.google.com/speed/page-speed/docs/caching.html#LeverageProxyCaching - Lệnh này hướng dẫn các proxy lưu vào bộ nhớ cache hai phiên bản của tài nguyên: một phiên bản nén và một phiên bản không nén. Phiên bản chính xác của tài nguyên được phân phối dựa trên tiêu đề yêu cầu khách hàng. – Kyle

+0

Bạn thực sự không có bất kỳ quyền kiểm soát nào về cách App Engine phục vụ nội dung tĩnh. Họ chỉ làm điều đó cho bạn. Tôi nghĩ rằng nó là khá an toàn để giả định họ sẽ theo hầu hết các thực hành tốt nhất mà họ tư vấn cho người khác. –

+5

@drew bạn có một số kiểm soát, bạn có thể chỉ định hết hạn bộ nhớ cache của trình duyệt: http://code.google.com/appengine/docs/java/config/appconfig.html#Static_Files_and_Resource_Files. Và hiện tại họ không đặt tiêu đề 'thay đổi: chấp nhận mã hóa' như tốc độ trang nói. – Kyle

2

Từ the docs, chỉ cần thêm http_headers cho xử lý mà bạn cần trong app.yaml (đối với Python):

- url: /static 
    static_dir: static 
    http_headers: 
    Vary: Accept-Encoding 
Các vấn đề liên quan