Я хочу изменить свойства кеширования вложенной папки, но она не работает должным образом. Вместо файлов в foo/images и foo/icons, которые кэшируются, они возвращаются без набора кеша.Адаптация конфигурации Apache для подкаталогов
# enable caching for static files
<Directory ~ "^/web/foo/(images|icons)">
ExpiresActive On
# cache images and media for 7 days
ExpiresDefault A604800
Header append Cache-Control "public, proxy-revalidate"
</Directory>
<Directory ~ "^/web/(foo|bar)">
ExpiresActive On
ExpiresDefault A0
Header set Cache-Control "no-cache, no-store, must-revalidate, max-age=0, proxy-revalidate, no-transform"
Header set Pragma "no-cache"
</Directory>
Я в основном хочу, чтобы все не кэшировалось, если они не находятся в определенных подпапках. Мое понимание заключалось в том, что Directory с регулярными выражениями совпадет в указанном порядке.
Имейте в виду, что мой настоящий сайт намного сложнее, чем этот поддельный пример. Так что да, я знаю, что могу установить по умолчанию, чтобы не кэшировать, а затем устанавливать его для каждого каталога, но я не могу этого сделать в этой конфигурации, поэтому я хочу сделать это только с директивами Directory, а также без файлов .htaccess.
Это только заголовок 'Pragma', который вы видите (всегда будет установлен btw)? Или это «Cache-Control»? – Qben
Похоже, обе эти директивы запускаются для подпапок, поэтому для Cache-Control вы получаете «no-cache, no-store, must-revalidate, max-age = 0, proxy-revalidate, no-transform, public, proxy-revalidate' – Toxikman
Вы попробовали мое предложение в ответе ниже? – Qben