Cжатие и кэширование: gzip, expires на хостинге REG.RU

Cжатие и кэширование: gzip, expires на хостинге REG.RU
Тип статьи:
Авторская

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

Недавно я начал заниматься SEO оптимизацией своего сайта и натолкнулся на хороший инструмент от Google PageSpeed Insights,который проверяет скорость загрузки сайта. И он сразу выявил что мой сайт грузится 11 / 100, а для нормальной работы требуется 98/100. Для исправления проблемы нужно было включить Cжатие и кэширование: gzip, expires. Но оказалось не все так просто. Просто, что я нашел для решения моей проблемы ничего не подходило. Но все таки, это решение есть.

Включение Сжатия Gzip с помощью Nginx

Заходим в ISP Manager — Менеджер файлов.
Откройте файл конфигурации (обычно это /etc/nginx/nginx.conf ) и добавьте в блок «http» для вашего сайта строки:
 #GZIP<br />
	    gzip on;<br />
	    gzip_min_length 1000;<br />
	    gzip_proxied expired no-cache no-store private auth;<br />
	    gzip_types text/plain application/xml;<br />
	    # Выделяем буфер для gzip<br />
	    gzip_buffers 32 4k;<br />
	    # Устанавливаем уровень сжатия, от 1-9<br />
	    gzip_comp_level 5;<br />
	    # Убираем поддержку IE6<br />
	    gzip_disable "msie6";<br />
	    # Устанавливаем версию для использования gzip (1.0 или 1.1)<br />
	    gzip_http_version 1.1;<br />
	    # Разрешаем использовать статику<br />
	    gzip_static on;<br />
	    gzip_vary on;<br />
	    gzip_types text/css text/javascript text/xml text/plain text/x-component application/javascript application/x-javascript application/json application/xml application/rss+xml font/truetype application/x-font-ttf font/opentype application/vnd.ms-fontobject image/svg+xml;

Использование кеша на стороне браузера Nginx

Откройте файл конфигурации (обычно это /etc/nginx/nginx.conf ) и добавьте в блок «http» для вашего сайта строки:

expires max;

Вот, что в общем получилось:

 user  apache;<br />
	worker_processes 1;<br />
	error_log  /var/log/nginx/error.log warn;<br />
	pid        /var/run/nginx.pid;<br />
	events {<br />
	    worker_connections 1024;<br />
	}<br />
	http {<br />
	    include       /etc/nginx/mime.types;<br />
	    default_type  application/octet-stream;<br />
	    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '<br />
	                      '$status $body_bytes_sent "$http_referer" '<br />
	                      '"$http_user_agent" "$http_x_forwarded_for"';<br />
	    access_log  /var/log/nginx/access.log  main;<br />
	    sendfile    on;<br />
	    tcp_nopush   on;<br />
	    tcp_nodelay     on;<br />
	    server_tokens   off;<br />
	    keepalive_timeout  65;<br />
	    client_max_body_size 128m;<br />
	   <span style="color: rgb(239, 0, 27);"> expires max;<br />
		    #GZIP<br />
		    gzip on;<br />
		    gzip_min_length 1000;<br />
		    gzip_proxied expired no-cache no-store private auth;<br />
		    gzip_types text/plain application/xml;<br />
		    # Выделяем буфер для gzip<br />
		    gzip_buffers 32 4k;<br />
		    # Устанавливаем уровень сжатия, от 1-9<br />
		    gzip_comp_level 5;<br />
		    # Убираем поддержку IE6<br />
		    gzip_disable "msie6";<br />
		    # Устанавливаем версию для использования gzip (1.0 или 1.1)<br />
		    gzip_http_version 1.1;<br />
		    # Разрешаем использовать статику<br />
		    gzip_static on;<br />
		    gzip_vary on;<br />
		    gzip_types text/css text/javascript text/xml text/plain text/x-component application/javascript application/x-javascript application/json application/xml application/rss+xml font/truetype application/x-font-ttf font/opentype application/vnd.ms-fontobject image/svg+xml;</span><br />
	    include /etc/nginx/conf.d/*.conf;<br />
	    include /etc/nginx/vhosts/*/*.conf;<br />
	    server {<br />
	    server_name localhost;<br />
	    disable_symlinks if_not_owner;<br />
	    listen 80;<br />
	    include /etc/nginx/vhosts-includes/*.conf;<br />
	    location @fallback {<br />
	        error_log /dev/null crit;<br />
	        proxy_pass http://127.0.0.1:8080;<br />
	        proxy_redirect http://127.0.0.1:8080 /;<br />
	        proxy_set_header Host $host;<br />
	        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;<br />
	        proxy_set_header X-Forwarded-Proto $scheme;<br />
	        access_log off ;<br />
	    }<br />
	    }<br />
	}

После сохранения перезапустите сервер, и проверьте сайт на PageSpeed Insights

Так же хорошие сервисы gidnetwork и whatsmyip

 

 
 
 
 
 
 
 
 
 
 
Этот вариант 100% рабочий на хостинге REG.ru, он используется на этом сайте. Советую ставить его!!!

Включение gzip сжатия на Apache

 Нужно лишь отредактировать корневой файл .htaccess, добавив туда следующие строки:
# сжатие text, html, javascript, css, xml:<br />
	<ifModule mod_deflate.c><br />
	AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/css text/javascript application/javascript application/x-javascript<br />
	</ifModule>
Этот вариант работает, но почему то не определяется на сайте PageSpeed Insights.Хотя сервисы gidnetwork и whatsmyip находят. Не советую использовать.

Включение использование кеша на стороне браузера через Apache

Нужно лишь отредактировать корневой файл .htaccess, добавив туда следующие строки:
# Включаем кэш в браузерах посетителей<br />
		<ifModule mod_headers.c><br />
		# Отключаем кеширование php и других служебных файлов<br />
		<FilesMatch "\.(pl|php|cgi|spl|scgi|fcgi)$"><br />
		Header unset Cache-Control<br />
		</FilesMatch><br />
		</IfModule><br />
		# Включаем кэш в браузерах посетителей<br />
		<br />
		# Усиливаем кеширование<br />
		FileETag MTime Size<br />
		<ifmodule mod_expires.c><br />
		<filesmatch ".(jpg|jpeg|gif|png|ico|css|js)$"><br />
		ExpiresActive on<br />
		ExpiresDefault "access plus 1 year"<br />
		</filesmatch><br />
		</ifmodule><br />
		# Усиливаем кеширование
Этот вариант работает, но почему то не определяется на сайте PageSpeed Insights. Хотя другие находят. Не советую использовать.
 
Все вопросы и новые пути решения пишите в комментариях или в личку.
+2
707
Нет комментариев. Ваш будет первым!