Điểm:0

Apache: Tôi không thể đặt tiêu đề bộ đệm đầy đủ cho văn bản/html bằng htaccess

lá cờ ro
228

Tôi gặp sự cố tương tự khi không thể đặt tiêu đề bộ đệm đầy đủ cho các tệp JS và CSS trong tệp htaccess của mình và hóa ra là tôi không thể vì hết hạn bộ đệm được đặt trên máy chủ và tôi phải thêm AllowOverride all trong bộ chứa vhost để nó hoạt động, nhưng tôi vẫn không thể đặt tiêu đề bộ đệm đầy đủ cho văn bản/html trên một trang. Tôi có thể đặt tuổi tối đa bằng cách sử dụng mod_expires trong tệp htaccess của mình, nhưng nếu tôi cố gắng đặt tiêu đề bộ đệm với điều này:

<FilesMatch "\.(html|htm|rtf|rtx|txt|xsd|xsl|xml|HTML|HTM|RTF|RTX|TXT|XSD|XSL|XML)$">
    FileETag MTime Size
    <IfModule mod_headers.c>
        Header set Pragma "public"
        Header set Cache-Control "no-cache, must-revalidate, public"
    </IfModule>
</FilesMatch>

Không có bộ đệm, phải xác thực lại, công khai không hiển thị. Điều duy nhất hiển thị trong kiểm soát bộ đệm là độ tuổi tối đa. Có ai biết cách sửa lỗi này để tôi có thể đặt toàn bộ tiêu đề bộ đệm trong htaccess cho văn bản/html không?

Đây là những gì tôi có sau đề xuất của Bob và nó vẫn không hoạt động:

<FilesMatch ".+\.(html|htm|rtf|rtx|txt|xsd|xsl|xml|HTML|HTM|RTF|RTX|TXT|XSD|XSL|XML)$">
    FileETag MTime Size
    <IfModule mod_headers.c>
        Header set Pragma "public"
        Header set Cache-Control "no-cache, must-revalidate, public"
    </IfModule>
</FilesMatch>

Tôi đang cố gắng đặt tiêu đề bộ đệm cho tệp có tên "/" trong DevTools > Network with initiator "document" và nhập "html".

Điểm:0
lá cờ cn
Bob

Regex của bạn có vẻ không chính xác. Hiện tại, nó chỉ khớp với các tệp có tên .html , .htm v.v. và không phải những gì bạn có thể dự định, tất cả các tệp có phần mở rộng .html.

Cố gắng:

<FilesMatch ".+\.(html|htm|rtf|rtx|txt|xsd|xsl|xml|HTML|HTM|RTF|RTX|TXT|XSD|XSL|XML)$">
228 avatar
lá cờ ro
228
Vẫn không hoạt động. Tôi đang cố gắng đặt tiêu đề bộ đệm cho tệp có tên "/" trong DevTools > Network with initiator "document" và nhập "html". Chỉ tuổi tối đa mới hiển thị trong kiểm soát bộ đệm, được đặt bằng mod_expires chứ không phải: không có bộ đệm, phải xác thực lại, công khai.
Điểm:0
lá cờ ro
228

Đây là cách bạn làm những gì tôi đang cố gắng làm. Bạn không thực sự chỉ định loại tệp. Thật khó hiểu vì bạn có thể đặt độ tuổi tối đa cho việc này bằng cách sử dụng loại văn bản/html với mod_expires.

<IfModule mod_headers.c>
    Header set Cache-Control "max-age=31536000, no-cache, must-revalidate, public"
    Header set Pragma "no-cache"
</IfModule>

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.