У меня была аналогичная проблема, когда я не мог установить полный заголовок кеша для файлов JS и CSS в моем файле htaccess, и оказалось, что я не могу, потому что срок действия кеша был установлен на сервере, и мне пришлось добавить AllowOverride все в контейнере vhost, чтобы заставить его работать, но я все еще не могу установить полный заголовок кеша для текста/html на странице. Я могу установить максимальный возраст, используя mod_expires в моем файле htaccess, но если я попытаюсь установить заголовок кеша следующим образом:
<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>
Публичные данные без кеша, требующие повторной проверки, не отображаются. Единственное, что отображается в управлении кешем, — это максимальный возраст. Кто-нибудь знает, как это исправить, чтобы я мог установить весь заголовок кеша в htaccess для текста/html?
Вот что у меня есть после предложения Боба, и это все еще не работает:
<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>
Я пытаюсь установить заголовок кеша для файла с именем «/» в DevTools> Network с инициатором «document» и введите «html».