Автор Тема: Ускорение работы сайта  (Прочитано 27139 раз)

Оффлайн delasker

  • Пользователь
  • **
  • Сообщений: 73
    • Просмотр профиля
Ускорение работы сайта
« : Октября 29, 2012, 07:59:58 am »
Конечно, каждый мастер и не очень мастер применяет свои способы ускорения и оптимизации: подбор хостинга, сжатие изображений, мудрит с кодом и т.п. Но я бы предложил способ увеличения скорости сайта, рекомендованный Google. Так уж вышло, что пришлось мне переделывать и доводить сайт http://spp37.ru, начатый другим. Шаблон оказался не на css, а с большим количеством картинок. Обычное дело: сделал, запустил в Firefox c расширением Firebug. там есть вкладка Page Speed. И ужаснулся, скорость сайта была оценена как 61. Порылся в интернете и сразу же нашёл рекомендации Google, названные htaccess кэширование. Предлагается использовать кэш браузера на стороне пользователя. Ну подробности что и как почитать лучше у Брина. А по сути в файл .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>



На всякий случай ещё архив прилагаю, во избежание если в коде символы не так записались.
Применил к упомянутому сайту и, о Чудо - скорость уже 80. Ну не буду говорить о результате. Сайт просто полетел, по сравнению с тем что было.

[вложение удалено администратором]

Оффлайн lugobor

  • Пользователь
  • **
  • Сообщений: 83
    • Просмотр профиля
    • Студия web дизайна Lugobor
Re: Ускорение работы сайта
« Ответ #1 : Октября 31, 2012, 02:30:14 am »
Насколько я понял, этим можно счастье сделать любому движку, не только лего?
Студия web дизайна http://lugobor.ru

Оффлайн delasker

  • Пользователь
  • **
  • Сообщений: 73
    • Просмотр профиля
Re: Ускорение работы сайта
« Ответ #2 : Октября 31, 2012, 06:20:50 am »
Да, рекомендации Google общие для всех. Из практики личной - применил к MaxSite, эффект тот же.
А здесь я привёл вариант подходящий именно для Lego и работающий у меня. Есть и другие, если этот не заработал и дал 500- ю ошибку.
Вот другой вариант:
# использование кеша браузеров
FileETag MTime Size
<ifmodule mod_expires.c>
<filesmatch ".(jpg|jpeg|gif|png|ico|css|js)$">
ExpiresActive on
ExpiresDefault "access plus 1 year"
</filesmatch>
</ifmodule>

#Запрет отдачи HTTP-заголовков Vary браузерам семейства MSIE
<IfModule mod_setenvif.c>
BrowserMatch "MSIE" force-no-vary
BrowserMatch "Mozilla/4.[0-9]{2}" force-no-vary
</IfModule>

А ещё там же даётся вариант удалить заголовки ETag и Last-Modified, что устранит обмен при загрузке запросами о новой версии кэша. Но в общем на практике не дало ничего.
Собственно, раздел там огромный и его изучить надо.
« Последнее редактирование: Октября 31, 2012, 06:33:32 am от delasker »

Оффлайн lugobor

  • Пользователь
  • **
  • Сообщений: 83
    • Просмотр профиля
    • Студия web дизайна Lugobor
Re: Ускорение работы сайта
« Ответ #3 : Октября 31, 2012, 09:35:26 am »
Спасибо!
Студия web дизайна http://lugobor.ru

Оффлайн util

  • Спец
  • ***
  • Сообщений: 108
    • Просмотр профиля
Re: Ускорение работы сайта
« Ответ #4 : Октября 31, 2012, 10:32:10 am »
Файл .htaccess который в корне хоста или сайта(магазина) ?

Оффлайн pavelsmorchkov

  • Старожил
  • ****
  • Сообщений: 285
    • Просмотр профиля
    • Бренд-шоп.net
Re: Ускорение работы сайта
« Ответ #5 : Октября 31, 2012, 12:30:08 pm »
реально работает) с 76 до 87

Оффлайн delasker

  • Пользователь
  • **
  • Сообщений: 73
    • Просмотр профиля
Re: Ускорение работы сайта
« Ответ #6 : Ноября 01, 2012, 07:54:02 am »
Цитировать
Файл .htaccess который в корне хоста или сайта(магазина) ?
В корне сайта
Цитировать
реально работает) с 76 до 87
Предлагаю вообще включить в Lego по умолчанию.
Это ещё не всё. Доштудирую тему, выложу ещё чего понял. А может кто пограмотнее почитает и даст что-то конкретное

Оффлайн delasker

  • Пользователь
  • **
  • Сообщений: 73
    • Просмотр профиля
Re: Ускорение работы сайта
« Ответ #7 : Ноября 02, 2012, 06:55:40 am »
Ну можно закомментировать с пояснением. А так, вот цитата:
Цитировать
Также расчеты компании Netcraft показывают, что web-сервер Apache продолжает оставаться самым популярным в мире – в январе 2012 года его рыночная доля составляла аж 64,91%. А так, вообще-то, тройка лидеров выглядит следующим образом:

    Apache – 64,91% (в декабре 2010 года было 65,22%);
    Microsoft – 14,46% (14,86%);
    nginx – 9,63% (8,85%)

Оффлайн delasker

  • Пользователь
  • **
  • Сообщений: 73
    • Просмотр профиля
Re: Ускорение работы сайта
« Ответ #8 : Декабря 10, 2012, 12:42:37 pm »
Вот ещё мулечка и, как мне кажется, очень положительно влияющая на скорость. Это mod_deflate - сжатие файлов. В противовес GZIP. Для того чтобы включить, в самое начало .htaccess вставить код:
<ifmodule mod_deflate.c="">
<filesmatch .(js|css|.jpg|.gif|.png|.tiff|.ico)$="">
SetOutputFilter DEFLATE
</filesmatch>
</ifmodule>
Как видите указаны типы файлов, которые нужно жать. Можно что-то исключить или добавить.
Пробуем, отписываемся. Должно работать почти везде.

Оффлайн pavelsmorchkov

  • Старожил
  • ****
  • Сообщений: 285
    • Просмотр профиля
    • Бренд-шоп.net
Re: Ускорение работы сайта
« Ответ #9 : Декабря 10, 2012, 04:19:12 pm »
сжатие включил но не работает
Цитировать
Включите сжатие

Сжатие ресурсов с помощью gzip или deflate позволяет уменьшить объем данных, передаваемых по сети.
Подробнее...

Предложения для этой страницы

Сжатие следующих ресурсов посредством gzip позволит уменьшить их размер для переноса на 281.2Кб (на 80%).
Сжатие http://xn----9sbjd4bihc0f.net/ позволит уменьшить размер на 97.7Кб (на 83%).
Сжатие http://xn----9sbjd4bihc0f.net/index.php?res=1366 позволит уменьшить размер на 97.7Кб (на 83%).
Сжатие http://vk.com/css/rustyle.css?174 позволит уменьшить размер на 41.2Кб (на 78%).
Сжатие http://vk.com/css/widgets.css?45 позволит уменьшить размер на 15.7Кб (на 80%).
Сжатие http://vk.com/css/ui_controls.css?33 позволит уменьшить размер на 8.8Кб (на 77%).
Сжатие http://xn----9sbjd4bihc0f.net/.../jquery.menu.1.3.3.js позволит уменьшить размер на 5.3Кб (на 68%).
Сжатие http://xn----9sbjd4bihc0f.net/.../wufoo.js позволит уменьшить размер на 3.8Кб (на 69%).
Сжатие http://counter.rambler.ru/top100.jcn?2427140 позволит уменьшить размер на 3.8Кб (на 56%).
Сжатие http://xn----9sbjd4bihc0f.net/core/core_ajaxconst.php позволит уменьшить размер на 3.1Кб (на 79%).
Сжатие http://vk.com/widget_poll.php?... позволит уменьшить размер на 2.9Кб (на 61%).
Сжатие http://html5shim.googlecode.com/svn/trunk/html5.js позволит уменьшить размер на 1.1Кб (на 50%).

Оффлайн delasker

  • Пользователь
  • **
  • Сообщений: 73
    • Просмотр профиля
Re: Ускорение работы сайта
« Ответ #10 : Декабря 11, 2012, 08:46:33 am »
А если GZIP включить?
<IfModule mod_gzip.c>
mod_gzip_on       Yes
mod_gzip_dechunk  Yes
mod_gzip_item_include file      \.(html?|xml|css|js|php|jpg|png|gif)$
mod_gzip_item_include handler   ^cgi-script$
mod_gzip_item_include mime      ^text/.*
mod_gzip_item_include mime      ^application/x-javascript.*
mod_gzip_item_exclude mime      ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</IfModule>
Либо другой вариант mod_deflate:
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
<ifmodule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_item_include file \.js$
mod_gzip_item_include file \.css$ </ifmodule>
</IfModule>
А сами js сервисами пожать если?

Оффлайн delasker

  • Пользователь
  • **
  • Сообщений: 73
    • Просмотр профиля
Re: Ускорение работы сайта
« Ответ #11 : Декабря 11, 2012, 09:02:50 am »
А потом, Вы про оптимизацию изображений не слышали? У Вас, к примеру взял, фото lacoste-pour-femme-lacoste-dlya-zhenschin-391 размером 300х300 в PNG и его размер 113 kb. Я вот взял и оптимизировал и вышел тот же PNG размером 26 kb. И так все картинки. Какая уж тут скорость

Оффлайн pavelsmorchkov

  • Старожил
  • ****
  • Сообщений: 285
    • Просмотр профиля
    • Бренд-шоп.net
Re: Ускорение работы сайта
« Ответ #12 : Декабря 11, 2012, 10:23:17 am »
картинок очень много и вручную их править не вариант

Оффлайн delasker

  • Пользователь
  • **
  • Сообщений: 73
    • Просмотр профиля
Re: Ускорение работы сайта
« Ответ #13 : Декабря 11, 2012, 01:52:10 pm »
так есть сервисы, где пакетом можно

Оффлайн pavelsmorchkov

  • Старожил
  • ****
  • Сообщений: 285
    • Просмотр профиля
    • Бренд-шоп.net
Re: Ускорение работы сайта
« Ответ #14 : Декабря 30, 2012, 02:46:43 pm »
картинки ужал програмкой все сразу) я даже и не знал что есть такой удобный софт) загрузка и правду быстрее теперь...
Цитировать
Предложения для этой страницы

Следующие ресурсы идентичны по содержанию, но получены от разных URL. Предоставляйте эти ресурсы по одному и тому же URL, чтобы сэкономить 1 запр. и 100.3Кб.
http://xn----9sbjd4bihc0f.net/
http://xn----9sbjd4bihc0f.net/index.php?res=1366
Следующие ресурсы идентичны по содержанию, но получены от разных URL. Предоставляйте эти ресурсы по одному и тому же URL, чтобы сэкономить 1 запр. и 9.0Кб.
http://xn----9sbjd4bihc0f.net/css/css_ps/image/spryte.png
http://xn----9sbjd4bihc0f.net/css/css_ps/images/spryte.png
Следующие ресурсы идентичны по содержанию, но получены от разных URL. Предоставляйте эти ресурсы по одному и тому же URL, чтобы сэкономить 1 запр. и 6.7Кб.
http://widget.siteheart.com/apps/js/sh.js
http://widget.siteheart.com/apps/js/sh.js?3
почему сайт дублируется? http://xn----9sbjd4bihc0f.net/
http://xn----9sbjd4bihc0f.net/index.php?res=1366