- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте! У такая ситуация - проверил очередной сайт через PageSpeed Insights - пишет - обязательно используйте кэш браузера. Я думаю - всего делов, добавил в самом начале index.php строки:
И думаю все, но проверяю еще раз - снова пишет используйте кэш, те же файлы рекомендует кэшировать - в общем без изменений.
Почитал в интернете инфу, смотрю - пишут надо включать кэширование через htaccess. Ок, добавил в него строки:
<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"
и так далее для всех типов файлов. Проверяю еще раз через Insights а там снова без изменений!
Ладно, еще более основательно поискал инфу, почитал, пишут, что если на хостинге 2 веб-сервера, как у меня - apache+nginx, то фротенд идет уже через nginx. И нужно именно там все прописывать. Ок, перевел сайт в ручной режим, и прописал уже в файле конфига nginx строки:
server {
location / {
expires 7d;
add_header Cache-Control: max-age=604800;
add_header Cache-Control private; }}
Проверяю еще раз Insights - а там блин снова без изменений, как будто вообще ничего не делал!
Помогите, пожалуйста, кто сталкивался с такой ситуацией - почему так, где еще можно копать? А то уже несколько дней бьюсь, а толком не сдвинулся даже..
Nginx перезагружали после изменения конфига?
nginx -s reload
seo11, да, вот только что попробовал перезагрузить - и снова без изменений..
что же за фигня такая?
а не может что-то конфликтовать, из-за того, что я везде прописал это кэширование - и в php, и в htaccess и в конфиге?
Ладно, еще более основательно поискал инфу, почитал, пишут, что если на хостинге 2 веб-сервера, как у меня - apache+nginx, то фротенд идет уже через nginx. И нужно именно там все прописывать. Ок, перевел сайт в ручной режим, и прописал уже в файле конфига nginx строки:
server {
location / {
expires 7d;
add_header Cache-Control: max-age=604800;
add_header Cache-Control private; }}
Проверяю еще раз Insights - а там блин снова без изменений, как будто вообще ничего не делал!
Помогите, пожалуйста, кто сталкивался с такой ситуацией - почему так, где еще можно копать? А то уже несколько дней бьюсь, а толком не сдвинулся даже..
Покажите файл nginx.conf полностью. А то похоже Вы не в тот прописали.
а не может что-то конфликтовать, из-за того, что я везде прописал это кэширование - и в php, и в htaccess и в конфиге?
Это вряд ли.
Здравствуйте!
Почитал в интернете инфу, смотрю - пишут надо включать кэширование через htaccess. Ок, добавил в него строки:
В htaccess строки добавил, а сами модули в апаче включил?
a2enmod headers
a2enmod expires
Если не включены, то по очереди включаем и перезагружаем апач
Попробуй.
p.s. - сейчас проверил на http://www.bertal.ru/, какие заголовки отдает сервер, и вот что получил:
HTTP/1.1 200 OK
Server: nginx/1.2.1
Date: Mon, 19 Sep 2016 19:54:08 GMT
Connection: keep-alive
Cache-Control: max-age=360000
Expires: Thu, 29 Sep 2016 19:54:08 GMT
X-Powered-By: PHP/5.3.13
Set-Cookie: site_data=a%3A2%3A%7Bs%3A11%3A%22autologinid%22%3Bs%3A0%3A%22%22%3Bs%3A6%3A%22userid%22%3Bi%3A0%3B%7D; expires=Tue, 19-Sep-2017 19:54:08 GMT; path=/; domain=.site.ru
Set-Cookie: site_sid=a1fc424a76dbdeb7cfa15bbfc92e4f7c; path=/; domain=.site.ru
Last-Modified: Sun, 18 Sep 2016 19:54:08 GMT
Насколько я понимаю, в ответах сервера все ок - он передает, что надо кэшировать (вроде). Так что же PageSpeed тогда выеживается?
---------- Добавлено 20.09.2016 в 00:11 ----------
eiweb, да, модули включил сразу, когда прописывал, но не работало
но при этом - уф, сейчас копался в настройках хостинга, ради интереса снова перевел сервер в автоматический режим из ручного. и заметил, что в автоматическом режиме можно в "гуйном" виде, в виде галочек включить сжатие и кэширование, включил его - и вуаля - PageSpeed наконец-то поверил, что кэширование включено! ура!
так что, на этот раз удалось как-то решить эту задачу с помощью автомата. правда так и непонятно, почему же не включалось оно в ручном режиме, но на данный момент этот вопрос уже на втором плане, главное получилось! несколько дней мучался, блин.
nikonlay, Вы изначально сервисами не то проверяли и делали из того, что просил гугл. Кэшировать надо не страницы, заголовки кэша нужно отдавать на статику, то есть картинки/скрипты/стили
За статику не отвечает php, а в вашей связке и апач, так как всю статику отдает nginx и для этого вам в блок server вашего сайта нужно было прописать, что то проде этого
Aisamiery, спасибо за ответ! Сейчас на этом сайте уже ничего трогать не буду - заработало - уже хорошо. Но ваш ответ сохраню и в будущем буду применять, тк за эти дни самому стало очень интересно, почему же ничего не работает из того, что пишут вроде бы знающие люди в своих статьях в Интернет.