
Как ускорить работу блога на WordPress.
Добрый вечер!
В последнее время я стал замечать, что скорость загрузки страниц на моем блоге стала очень медленная. Меня это стало сильно напрягать и я решил, что то надо с этим сделать.
На форумах я наткнулся на тему, где обсуждали эту проблему. Оказывается она довольно глобальная. И одним из лучших способов для ее устранения, является выявления причин, из-за которых такая высокая скорость загрузки страниц.
Выявить эти причины мне помог сервис от Google — Page Speed.
Проведя на нем анализ блога, Google ниже выдаст рекомендации, которые необходимо сделать, что бы увеличить скорость загрузки страниц. Там будет расписано все по пунктам, какие функции необходимо применить для ускорения работы, а какие уже выполнены. А рядом с рекомендация будут флажки:
- красный восклицательный знак означает, что эта мера значительно ускорит загрузку страницы.
- зеленый восклицательный знак говорит о том, что все в порядке.
- желтый восклицательный знак сообщает, что эта мера немного ускорит загрузку страницы.
Самыми важными элементами, которые существенно увеличивают скорость блога, являются:
- включение сжатия, с помощью которого при помощи функции gzip уменьшается объем данных передаваемых по сети;
- вторым важным элементов, который сильно отражается на скорости загрузки страницы — это использование кэша браузера.
Включение сжатия.
Без сжатия вес моей страницы изначально составлял примерно 1,3 Мб. Я был просто в шоке. Раньше я на это не обращал внимания. Вроде простой движок, от куда столько мегабайт набежало? Проверял я эту инфу на сайте Pingdom Tools. После сжатия вес страницы уменьшился до 800 Кб. Блог стал грузиться куда заметнее быстрее.
А теперь давайте поподробнее. Как и где прописывать функцию gzip?
Для начала необходимо будет зайти в корень вашего сайта. Используйте для этого Total Comander или Filezilla. В корневой директории ищем файл .htaccess и в него в самом начале вставляем следующий код:
<IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE text/javascript AddOutputFilterByType DEFLATE text/css <IfModule mod_setenvif.c> BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4.0[678] no-gzip BrowserMatch bMSIE !no-gzip !gzip-only-text/html </IfModule> </IfModule> |
Есть еще схожие коды, но я их все перепробовал и лишь этот оказался рабочим(по крайней мере для моего блога 🙂 )
Использование кэша браузера.
Буду короток, Кэш — это временная информация, которая хранится в буфере на локальном диске определенное время(как то так 🙂 ). Благодаря использованию кэша браузера, часть информации загружается с вашего компьютера, благодаря чему и ускоряется загрузка блога.
Для того, что бы сайт смог использовать кэш браузера, надо вставить код отображенный ниже в файл .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> # использование кеша браузеров 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> |
Кстати, это тоже один единственный рабочий код, что я смог найти. С другими была ошибка 500.
По завершению редактирования файла .htaccess, обязательно проверьте на сайте Pingdom Tools, как он повлиял на производительность. Если вдруг выскочит ошибка 500 или ничего не изменится, то удалите его к чертям собачим насовсем.
Данные рекомендации должны существенно увеличить скорость блога.
А вы знали о том, что на медленных блогах страницы по результатам запроса в поисковой выдаче редко попадают на первые позиции. Я об этом тоже до недавних пор не знал 🙂
На этом пожалуй всё на сегодня. Всего доброго и желаю вам успехов с оптимизацией блога.
— Инновационные методы, как ускорить работу блога.
— Уменьшаем время загрузки страниц блога. Плагин DB Cache Reloaded Fix.
— Как ускорить работу блога на WordPress.
— Увеличиваем скорость индексации страниц
С Уважением, Александр Рус и mr.Клик.
А есть какой-нибудь плагин для включения сжатия, чтобы не лезть в код?
Да есть такие, например WP-HTML-Compression.
Спасибо, только что установил. Надеюсь по быстрее теперь станет работать сайт.
P.S после отправки комента выдало ошибку 502
У меня стоит антиспам на блоге, возможно ты ссылку вставил какую-нибудь в комментарий.
Да, я с тобой согласен, находил на форуме инфу и там товарищи говорили что все зависит от шаблона вордпрес и сервера
Привет всем, попробывал gzip код и без изменений.Мне помог этот вариант
# compress text, html, javascript, css, xml:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
# Or, compress certain file types by extension:
SetOutputFilter DEFLATE
Когда я экспериментировал на своем блоге, то тоже испробовал около трех кодов, только один из них оказался рабочим. Видимо есть какие то нюансы, не для всех блогов подходит один и тот же код, либо, где то могла быть допущена ошибка.
В конце лета довелось побывать в нескольких населённых пунктах на юге Пермской области. Там УКВ даже не ловится. Приём TV возможен только через тарелки. Сотовой связи нет совершенно никакой. Телефон с тарелкой находится на улице, звонить только по карточке. Для них любой Интернет - мечта.
Ужас!! Я в Читинской области был, там такая же картина, но Читинская область в глуши, а Пермская область что бы настолько далекой от цивилизации была, прям просто не верится.
Я не спорю, что Мерседес лучше телеги и что телега - это прошлый век. Но не у всех ведь есть деньги на хорошую машину. У нас тарифная вилка от 150 рублей за 128 Кбит/с безлимитки в месяц и до 1200 руб за скорость от 3Мбит/с.
Ппц это где такие цены грабительские.
Я плачу всего 300 руб. за 10 мб/сек в месяц и мне хватает.
Так-то скорость загрузки зависит ещё и от скорости самой линии передачи данных, у кого-то 56Кб/сек., а у кого-то и 10Мб/сек. Мне кажется, что основное именно это. Но в нашей стране большие скорости только в крупных городах, да и то не у всех пользователей. С большой скоростью закачки вообще без разницы, есть сжатие, нет сжатия - в любом случае быстро.
56 кб/с это прошлый век:) Сейчас даже интернет с телефона намного быстрее)
У Гугла интересная рекомендация удалить из верхней части страницы Javasript. Так-то Javasript часто включают в тег head. Или Гугл что-то другое имеет в виду?
Ага, я этот пункт пропустил. Сделал только сжатие, и еще какие то мелочи. Скорость блога существенно возросла.
Скопировал эту страницу в ScrapBook, весит страница 1,02Мб. Потом выбросил всё ненужное, оставив только индексные файлы css, dat, html. Стала весить всего 107Кб. То есть страница полегчала почти в 10 раз, хотя значимой информации для пользователя в ней столько же, сколько и было до этого. Вывод напрашивается сам собой.
Включение сжатия идёт на сервере, а кэш браузера идёт у клиента, хотя для облегчения использования кэша и нужна редакция на сервере. Но дело в том, что после шпионских разоблачений Сноудена некоторые пользователи стали вообще запрещать кэшировать что-либо, и их не заставишь делать кэш ни за что.
Отлично, теперь буду летать. Кэш - штука нужная. Я также слышал, что скрипт Maxcache заметно ускоряет работу.
хм... надо будет попробовать этот скрипт.
Игорь линканите ссылочку на свой блог, если это конечно не секретно:)
Забыл сказать, скрипт этот платный, стоит где-то 300 рублей. Да и судя по отзывам и объёмам продаж, он действительно хорош.
может кто то уже купил и поделится им бесплатно?)
Может, но у меня его нет. И там ещё какая-то система защиты, так что бесплатно им пользоваться нельзя.
Это всё на будущее, блог ещё не запущен. Думал запускать сегодня, но из-за этой гонки придётся отложить на ноябрь.
Ну вот, выиграв в конкурсе, можно будет про платить хостинг новому блогу на 4-5 месяцев в перед-)
Гонки вооруженийт я думаю не буду гнаться за вами 🙂 не вижу в этом смысла. Комментировать статьи ради комментированная 😉
Немного не понял смысл ваших слов. Не видите смысл в гонке вооружений? Ну, как знаете.
Он имеет ввиду, что комментирует чужие блоги ради того, что бы авторы тех блогов комментировали его. Вот такая вот взаимовыручка)
Забавно, у меня вроде пока сайт блог работает шустро, но это потому что у меня мало на нём статей и посетителей 🙂 но как буду за компьютером дома, обязательно проверю свои скорости и попробую ещё уменьшить вес страниц 🙂 спасибо за подсказку.
Чем больше вес статей, тем лучше. Зачем же уменьшать. Это только ухудшит ваше положение в поисковой выдаче.
количество статей на скорость сайта не влияет) влияет вес страницы, оптимизация самого сайта и т.д.
У меня ве картинки нынче в фотошопе уменьшаться, так что я думаю у меня значительно меньша страница должна весить 😉
Скорость загрузки несомненна важна, но только ключевым фактором является восприимчивость сервера/хостинга к нагрузкам.
Кэш это не всегда хорошо, устаёшь потом обновлять страницу, что бы увидеть изменения. Особенно если работаешь с html.
Ну да хостинг тут играет важную роль, но снижение веса страниц на 30-40% тоже дают заметный результат. А вот кэш и правда напрягает, наверное его отключу)
Привет!
Ночной дозор не спит 😉
Очень любопытный сервис Page Speed.Будем разбираться! 😉
Обязательно, Виталий. Вы просто удивитесь, когда увидите насколько быстрее станет Ваш блог работать, воспользовавшись рекомендациями на сервере Page Speed.
Александр, обязательно проверю, с первого числа ))
Подключаешься к нашей гонке, или некогда?
Жаль, что 31 число не на выходной выпало )))