У меня проблема с кешем в моем laravel 6 админе. Настройки для кэша в .htaccess:
<filesMatch "\.(xml|csv|txt)$">
FileETag None
<ifModule mod_headers.c>
Header unset ETag
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
</ifModule>
</filesMatch>
## CACHE CONTROL ##
<IfModule mod_headers.c>
Header append Cache-Control "public"
</IfModule>
## EXPIRES CACHING ##
<IfModule mod_expires.c>
<ifModule mod_headers.c>
Header set Cache-Control "max-age=31536000"
</ifModule>
ExpiresActive On
ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType text/css "access plus 1 month"
ExpiresByType application/pdf "access plus 1 month"
ExpiresByType text/x-javascript "access plus 1 month"
ExpiresByType application/x-shockwave-flash "access plus 1 month"
ExpiresByType application/x-javascript "access plus 1 month"
ExpiresByType text/javascript "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"
ExpiresByType application/json "access plus 1 month"
ExpiresByType image/x-icon "access plus 1 year"
ExpiresDefault "access plus 2 days"
</IfModule>
Пример: я добавляю новый продукт ... но продукт не появляется в списке - ТОЛЬКО ЕСЛИ я перезагружаю браузер или открываю Консоль dev с включенным «отключить кеш» - это очень раздражает (и это не нормально для администратора). В админке мне не нужен кеш.
Это может быть проблемой?
<ifModule mod_headers.c>
Header set Cache-Control "max-age=31536000"
</ifModule>
Я не очень знаком с htaccess.
Для кеша я необходимо кэшировать javascript, css, изображения ... а не содержимое страницы (поскольку страницы являются динамическими c).
Я отключил кэш для этих файлов (xml | csv | txt), потому что эти файлы - некоторые каналы для других магазинов (и они обновляются ежедневно)
Как правильно кэшировать? Что я сделал не так в htaccess?
ОБНОВЛЕНИЕ
Я изменил настройки кэширования htaccess на это .... и я тестирую сейчас.
# DISABLE CACHE FOR THIS FILES
<filesMatch "\.(xml|csv|txt|json)$">
FileETag None
<ifModule mod_headers.c>
Header unset ETag
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
</ifModule>
</filesMatch>
## CACHE CONTROL ##
<IfModule mod_headers.c>
Header append Cache-Control "public"
<filesMatch "\.(css|js|jpg|jpeg|png)$">
Header set Cache-Control "max-age=31536000"
</filesMatch>
</IfModule>
## EXPIRES CACHING ##
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access"
ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType text/css "access plus 1 month"
ExpiresByType text/x-javascript "access plus 1 month"
ExpiresByType application/x-javascript "access plus 1 month"
ExpiresByType text/javascript "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"
</IfModule>