• UAH
  • USD
  • RUB
  • EUR
  • +38(044) 392-74-33  Киев
  • +38(057) 728-39-00  Харьков
  • +38(056) 794-38-31  Днепр
  • +38(032) 229-58-93  Львов
  • +38(048) 738-57-70  Одесса
  • +38(093) 449-04-21  Life
  • +38(067) 400-88-44  Киевстар
  • +38(095) 630-90-82  MTC
  • +1(888)393-24-51  USA, Toll free
  • +44(131)507-01-14  Great Britain
  • +7(499) 348-28-61  Москва

VPS. Кеш Браузера на VPS [решено]

Форумы VPS Кеш Браузера на VPS [решено]
martakov_gena
08.02.2015
хостинг: есть
домен: есть
Кеш Браузера на VPS [решено]
Подскажите пожалуйста как на VPS настраивается или где включается кеш браузера ?????
Евгений В.
08.02.2015
хостинг: есть
домен: нет
В случае с апачем - это можно сделать через файл .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"
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>


Само собой, модули apache mod_expires, mod_headers и mod_setenvif должны быть установлены
martakov_gena
08.02.2015
хостинг: есть
домен: есть
Спасибо за ответ, а как проверить модули apache mod_expires, mod_headers и mod_setenvif установлены или нет?????
Евгений В.
08.02.2015
хостинг: есть
домен: нет
Самый беззаботный способ - прописать правила из моего предыдущего варианта в .htaccess и посмотреть на результат. Если устроит - ну и ладушки. (:
Более правильно - создать в папке сайта файл test.php c кодом:
<?php
phpinfo();
?>

И открыв его в браузере посмотреть что есть в поле "Loaded Modules".
martakov_gena
08.02.2015
хостинг: есть
домен: есть
в .htaccess прописал но в сервисе PageSpeed все равно пишет "Используйте кеш браузера"

Вот какие модули загружаются!

core mod_log_config mod_logio mod_version prefork http_core mod_so mod_actions mod_alias mod_auth_basic mod_authn_file mod_authz_default mod_authz_groupfile mod_authz_host mod_authz_user mod_autoindex mod_cgi mod_deflate mod_dir mod_env mod_include mod_mime mod_negotiation mod_php5 mod_reqtimeout mod_rewrite mod_setenvif mod_ssl mod_status mod_suexec mod_vhost_alias mod_ispmgr
Евгений В.
08.02.2015
хостинг: есть
домен: нет
В списке нет mod_expires и mod_headers. Установить из консоли можно вот так:

a2enmod headers
a2enmod expires
service apache2 restart
martakov_gena
08.02.2015
хостинг: есть
домен: есть
Евгений спасибо вам большое все получилось буду теперь на будущее знать как это делается!!! :)
martakov_gena
10.02.2015
хостинг: есть
домен: есть
Евгений подскажите что делать при включении nginx перестает работать кеширование ????
Евгений В.
10.02.2015
хостинг: есть
домен: нет
1
Если nginx ставился через панель ISP, то открываем раздел "Домены" -- "WWW домены", выделяем нужный сайт и кликаем кнопку "Конфиг". В открывшемся окне выбираем вкладку "Nginx" и добавляем сразу после

server {
server_name имясайта www.имясайта;
listen ***.***.***.***;

Строки:

#  Включаем gzip-сжатие картинок, css-файлов, js-скриптов
gzip_static on;
gzip on;
gzip_comp_level  5;
gzip_types application/x-javascript application/javascript text/css image/jpeg image/png;

#  Добавляем кеширование на стороне браузера
expires 168h;
add_header Cache-Control private;

где в строке expires указывается время кеширования (168 часов - это 7 дней)

Если вручную, то всё то же самое - в файле /etc/nginx/nginx.conf

после изменений - обязательно перезапустить nginx выполнив:
service nginx restart


или если нужно чтобы nginx перечитал конфиги без перезапуска:
service nginx reload
martakov_gena
10.02.2015
хостинг: есть
домен: есть
Евгений спасибо все заработало только вопрос в .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"
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>
Евгений В.
10.02.2015
хостинг: есть
домен: нет
1
в .htaccess этот код оставлять или он уже не нужен? © martakov_gena

Вреда от него никакого, можно оставлять как есть.
martakov_gena
11.02.2015
хостинг: есть
домен: есть
Евгений спасибо вам за помощь большое, есть еще хорошие люди на свете.
Участвовать в общении на этом форуме могут только
зарегистрированные пользователи.

Если вы уже зарегистрированы Вам необходимо войти на форум.

Тема закрыта по истечению срока давности.
Горячая линия
(044)
392 74 33
другие города