Настройка кеширования в htaccess

green green  
30
  03.11.2016 19:52       5 854     Помощь  
Доброго времени суток. Сразу прошу прощение за длинный текст и прошу помощи. Установил плагин WP Super Cache. Установил в настройках плагина Cache Timeout 605000 сек, Scheduler 00:00 При проверке сайта в гугле появилась ошибка, что необходимо указывать в заголовках HTTP дату или срок действия статических ресурсов. Немного погуглил и узнал, что нужно это прописать в htaccess. У меня сейчас в htaccess прописано так
# END WPSuperCache# BEGIN WordPress<IfModule mod_rewrite.c>RewriteEngine OnRewriteBase /RewriteRule ^index\.php$ - [L]RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . /index.php [L]</IfModule>На одном из сайтов прочитал, что необходимо прописать так 

Ответы на пост (7) Написать ответ
green green
30
03.11.2016 21:51
Ребята, всем спасибо за помощь. Вопрос решен. Писал и хостингу и что только не делал) Потом банально перезаписал htaccess по примеру Дениса Коновалова с его сайта http://maxtop.org/optimalnyj-htaccess-dlya-wordpress/ И все, ошибка пропала. Может кому пригодится.
0
Решение
green green
30
03.11.2016 19:52
# кеширование в браузере на стороне пользователя
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access 7 days"
ExpiresByType application/javascript "access plus 1 year"
ExpiresByType text/javascript "access plus 1 year"
ExpiresByType text/css "access plus 1 year"
ExpiresByType text/html "access plus 7 day"
ExpiresByType text/x-javascript "access 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/x-icon "access 1 year"
ExpiresByType application/x-shockwave-flash "access 1 year"
</IfModule>

# Cache-Control
<ifModule mod_headers.c>
# 30 дней
<filesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">
Header set Cache-Control "max-age=2592000, public"
</filesMatch>
# 30 дней
<filesMatch "\.(css|js)$">
Header set Cache-Control "max-age=2592000, public"
</filesMatch>
# 2 дня
<filesMatch "\.(xml|txt)$">
Header set Cache-Control "max-age=172800, public, must-revalidate"
</filesMatch>
# 1 день
<filesMatch "\.(html|htm|php)$">
Header set Cache-Control "max-age=172800, private, must-revalidate"
</filesMatch>
</ifModule>

#Запрет отдачи HTTP-заголовков Vary браузерам семейства MSIE
<IfModule mod_setenvif.c>
BrowserMatch "MSIE" force-no-vary
BrowserMatch "Mozilla/4.[0-9]{2}" force-no-vary
</IfModule>
Правильно я понимаю, мне нужно мое удалить и прописать как нужно или как то это объединить? Помогите пожалуйста с правильным кодом.
0
Makedo Makedo
39
03.11.2016 20:08
смотря что у тебя написано. а так это нужно просто добавить в файл, и всё.
0
green green
30
03.11.2016 20:40
у меня сейчас так
# END WPSuperCache
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
Тоесть к моему еще добавить тот код?
0
Sheff2017 Sheff2017
43
03.11.2016 20:37
забудь про проблемы с htaccess - все дело ТОЛЬКО в настройках сервера. сам потратил кучу времени на выявление проблемы - на большинстве хостингов не включены по умолчанию нужные модуля, благодаря которым твой код в htaccess начинает работать. пиши в поддержку - не работает кэширование, включите модули
0
green green
30
03.11.2016 20:39
спасибо, попробую. Уже пишу
0
TeamPOKERPROIN TeamPOKERPROIN
4
03.11.2016 20:50
вот что тебе надо !
https://m.habrahabr.ru/post/154643/
0