Как ускорить работу сайта на Wordpress, не меняя хостинга
Ускорить работу сайта на WordPress в 2019 году, не меняя любимый хостинг очень просто. Но прежде чем приступить к мероприятиям по оптимизации скорости, проясните для себя два момента:
Во-первых, с помощью инструментов
Во-вторых, создайте резервные копии сайта, поскольку некоторые методы ускорения загрузки сайта потребуют исправления и редактирования файлов, что может нарушить работу вашего ресурса.
Готовы? Тогда начнем.
1. Удалите или отключите ненужные плагины
Лишние плагины и приложения могут СУЩЕСТВЕННО замедлить работу сайта, особенно если он реализован на таких платформах, как
Так, согласно данным одного исследования, плагины могут увеличивать время загрузки сайта на целых 86%! То есть, сайт, на загрузку которого требовалось 4,23 секунды, после удаления ненужных плагинов сможет загружаться всего за 1,33 секунды.
Кстати, важно даже не столько количество, сколько качество установленных на сайте плагинов. Сайт с 50 плагинами может загружаться гораздо быстрее сайта с 10 плагинами. Все дело в том, что некачественные плагины всякий раз подгружают различные скрипты и стили, посылают удаленные запросы, запрашивают информацию о каждой странице из базы данных.
Конечно, плагины помогают улучшить функциональность сайта. Однако использовать нужно лишь те из них, без которых вы не можете обойтись.
Если ваш ресурс создан на WordPress установите плагин
Данный инструмент сканирует все плагины WordPress на наличие проблем, и составляет отчет о том, как каждый из плагинов влияет на производительность сайта.
2. Уберите или существенно сократите количество кнопок социальных сетей на сайте
Вы уверены, что вам нужна сотня кнопок «Поделиться» в различных соцсетях? Если так, то вам есть о чем задуматься. Установить связь между наличием подобных кнопок и существенным притоком трафика на сайт довольно сложно. А вот то, что из-за медленно работающего сайта трафик снижается, уже было доказано. В любом случае, слишком большое количество кнопок социальных сетей может смущать посетителей.
Большинство кнопок «Поделиться» реализованы на JavaScript, что может не лучшим образом сказаться на производительности сайта. Не раз случалось, что из-за перебоев в работе Facebook и других социальных сетей, значительно снижалась скорость загрузки сайтов, установивших соответствующие кнопки.
Чтобы избежать подобных проблем, ограничьте количество кнопок соцсетей или вовсе уберите их. Еще вариант – настроить сайт так, чтобы кнопки разных социальных сетей не подгружались одновременно.
3. Загружайте коды аналитики и рекламных сетей асинхронно
Коды веб-аналитики и рекламных сервисов также способны значительно затруднять работу сайта, особенно, если удаленный сервер работает медленно или вообще «лежит». Настройте работу этих кодов в асинхронном режиме – в этом случае задержки ответа сервера не скажутся на производительности вашего сайта.
4. Используйте HTTP-заголовки Expires
Время ответа сервера – один из основных факторов, влияющих на скорость работы сайта. Чем больше запросов поступает на сервер, тем медленнее загружается ваш сайт.
Заголовки Expires сообщают браузерам посетителей, когда запрашивать те или иные файлы с вашего сервера, а когда – из кэш-памяти. Если заголовки Expires настроены на то, что файл будет запрашиваться только раз в месяц, и этот файл хранится в кэше с прошлого визита, то браузеры не будут снова запрашивать данный файл с сервера, пока не закончится месяц. Получается двойной эффект: ограничивается количество HTTP-запросов к вашему серверу, и в то же время сокращается нагрузка на сервер, поскольку один и тот же файл не будет запрашиваться повторно.
5. Используйте кэширование
Кэширование позволяет пользователям гораздо быстрее взаимодействовать с сайтом, благодаря тому, что в их браузере сохраняются данные о вашем сайте, и впоследствии загружаются оттуда – до тех пор, пока сайт не обновится, или пока вы не потребуете обновления версии сайта, сохранившейся на браузерах посетителей.
Использование кэширования существенно влияет на скорость работы сайта. Исследования показали, что при полном кэшировании время загрузки сайта может сократиться с 2,4 до 0,9 секунд – это отличный показатель!
Способы реализации кэширования зависят от используемой системы управления контентом. В случае с WordPress можно установить следующие плагины:
6. Поменяйте веб-хостинг
Мы не собирались об этом говорить, но все же…
Если все ваши попытки ускорить работу сайта не приносят результата, или же результат едва заметен, возможно, пришла пора сменить веб-хостера.
Хостинг-провайдер LandingHost.ru предлагает не дорогой веб-хостинг для ваших сайтов, наши тарифы:
Заказывая хостинг у нас, вы получаете:
- Бесплатный конструктор сайтов
- Бесплатный SSL сертификат с автоматической перегенерацией
- Выбор версии PHP (Apache, LSAPI, CGI, FastCGI) с поддержкой файла .htaccess
- Ежедневное полное резервное копирование сайта
- Защита от DDoS-атаки
- Поддержка протокола HTTP/2
- Бесплатный почтовый клиент Roundcube
- Shell-доступ
- Безопасный SSH-протокол
- И многое другое
7. Используйте тему оформления сайта с «чистым» кодом
Влияет ли тема оформления сайта на скорость его работы? Еще как! Просто поменяв тему, можно уменьшить скорость загрузки сайта в 3,6 раз! Таковы данные реального исследования, в ходе которого пользователю удалось сократить время загрузки сайта с 630 до 172 миллисекунд. При этом кроме темы оформления сайта, ничего не поменялось.
Как бы хорошо ни был сконфигурирован ваш сайт, если вы установили тему с раздутым кодом, у вас будут проблемы с загрузкой. Так что, при выборе темы сайта учитывайте не только то, как она выглядит, но и то, насколько качественно она написана.
8. Установите на вашем сервере программу PageSpeed от Google
Если вы технически подкованы, установите сервис PageSpeed самостоятельно, если же нет – обратитесь за помощью к своему хостинг-провайдеру или разработчикам программного обеспечения.
9. Оптимизируйте и уменьшайте размер картинок
Неоптимизированные изображения могут «весить» очень много, а значит, они будут задействовать большое количество ресурсов сервера и медленнее загружаться. Если средний размер картинок на вашем сайте составляет 1-2 МБ или более, вам предстоит серьезная работа. Существенно уменьшить размер изображений без потери качества можно с помощью следующих инструментов:
10. Используйте сжатие файлов с помощью gzip
Вероятно, вы уже пробовали сжимать файлы на своем компьютере и знаете, насколько меньше места они могут занимать. Например, файл размером 60 МБ можно «ужать» всего до 5 МБ. Сжатие с помощью программы gzip
работает так же, только в отношении сайтов: файлы сайта сжимаются и автоматически упаковываются в zip-архив. В итоге освобождается место, и увеличивается скорость работы сайта.
Так, был зафиксирован случай, когда размер сайта сократился с 68 до 13 КБ – исключительно благодаря использованию gzip
.
11. Регулярно оптимизируйте базу данных
Этот способ ускорения работы сайта, часто незаслуженно игнорируемый, особенно эффективен в отношении сайтов на WordPress или других CMS, активно взаимодействующих с базами данных. Из-за плагинов, сохраняющих логи, статистику и пользовательские данные, а также таких функций, как ревизия постов, пингбэки и трэкбэки, количество сохраняемых данных постоянно растет, и сайт начинает работать медленнее. Оптимизация баз данных позволяет значительно подстегнуть производительность сайта.
12. Минифицируйте файлы JavaScript и CSS
Если на вашем сайте используется много файлов JavaScript и CSS, скорее всего, браузерам пользователей приходится иметь дело с каждым из этих файлов по отдельности. В итоге создаются многочисленные запросы к серверу, что отрицательно сказывается на производительности сайта. В процессе минификации количество отдельных файлов JavaScript и CSS сокращается, а скорость работы сайта увеличивается.
Например с помощью плагина Autoptimize:
13. Объедините фоновые изображения в спрайты
Чем больше запросов браузеры посетителей посылают на ваш сервер, тем медленнее работает ваш сайт на их компьютерах. Большинство шаблонов сайтов состоят из многочисленных фоновых картинок, что приводит к созданию нескольких запросов всякий раз, когда посетители загружают сайт. Чтобы решить эту проблему, нужно объединить все изображения в одно (спрайт) – тогда, в процессе загрузки сайта, браузеры пользователей будут посылать лишь один запрос.
Объединение нескольких картинок в один спрайт позволяет снизить количество запросов к серверу, уменьшить количество байт, скачиваемых посетителями, и устранить задержки в работе сервера. В итоге сайт будет работать гораздо быстрее.
14. Используйте HTTP Keep-Alive
Обычно, когда браузер посетителя запрашивает файлы с вашего сервера, передача каждого файла осуществляется по отдельности. Иначе говоря, как только браузер загрузил файл, связь с сервером прерывается, а затем возобновляется, чтобы запросить следующий файл. При этом увеличивается нагрузка на процессор и сеть, и задействуется больше памяти, что в итоге замедляет работу сайта. После установки заголовка Keep-Alive для всех HTTP-запросов будет использоваться только одно соединение, что снизит нагрузку на сервер и позволит значительно повысить производительность сайта.
15. Исправьте все нерабочие ссылки на сайте
Нерабочие ссылки в текстах сайта не влияют на скорость его работы, разве что расстраивают пользователей. А вот «битые» ссылки в адресах JavaScript, CSS и изображений способны сделать загрузку сайта раздражающе медленной. Просканируйте сайт на наличие нерабочих ссылок и исправьте их прежде, чем распугаете посетителей.
Например с помощью плагина Broken Link Checker:
16. Избегайте хотлинкинга изображений
Суть хотлинкинга изображений состоит в том, что вы даете ссылку на картинку, размещенную на сайте другого пользователя, вместо того, чтобы загрузить ее на свой сервер. На первый взгляд кажется, что таким образом вы снижаете нагрузку на свой сайт, особенно если через него проходит много трафика. На самом же деле ваш сайт может работать медленнее, если на ресурсе, где размещена картинка, случатся перебои.
Поэтому, решив использовать какие-либо картинки (будь то иллюстрации к текстам или изображения для рекламных баннеров), разместите их на своем сервере, а уже потом давайте ссылки.
Защититься от хотлинкинга изображений в WordPress можно вставив в файл htaccess следующий код:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L]
Или воспользоваться плагином для WordPress, например:
17. Ограничьте количество внешних запросов
Полноценно работающий сайт включает в себя информацию с других ресурсов, в том числе видео, презентации и другие мультимедийные файлы. В этом нет ничего плохого, если только таких внешних файлов не становится слишком много, или же их не приходится загружать с медленно работающих сайтов. В этих случаях ваш собственный сайт может начать «подтормаживать». Чтобы избежать проблем, ограничьте количество запросов сайта к внешним ресурсам. Размещайте как можно больше файлов на вашем сервере, а остальные запрашивайте только с надежных ресурсов.
Отлично эту задачу решают серверы с HTTP/2
На серверах хостинг-провайдера LandingHost.ru по умолчанию включён протокол HTTP/2 для всех сайтов.
Не теряйте время на поиски лучшего хостинга для своего сайта! Вы его уже нашли!
18. Выбирайте надежную CMS
Система управления контентом – это каркас вашего сайта. Если вы используете простой шаблон HTML или такие популярные и надежные CMS, как WordPress, Drupal, Joomla, MODX и т.д. то беспокоиться не о чем. Однако, если вы предпочитаете менее известный или самостоятельно созданный движок, то рискуете столкнуться с проблемой медленно работающего сайта. Исследуйте этот вопрос, проведите соответствующие тесты, чтобы убедиться, что выбранная вами CMS будет работать быстро и надежно.
19. Используйте PHP-акселератор
PHP избавляет от необходимости многократно вводить на сайте одни и те же данные, но может увеличивать время загрузки сайта. Эту проблему можно решить двумя способами: по возможности заменить PHP-файлы статичными HTML-файлами, или же, если ваш сайт написан в основном на PHP, ускорить его работу с помощью PHP-акселератора.
20. Не допускайте хотлинкинга ваших изображений
Не допускать хотлинкинга своих изображений не менее важно, чем не заниматься хотлинкингом самим.
Владельцы других ресурсов, дающие прямые ссылки на ваши изображения, фактически забивают своим трафиком ваш канал. Ведь всякий раз, когда посетители будут просматривать ваши картинки на другом сайте, запросы будут посылаться к вам на сервер.
Чтобы этого не допустить, отключите функцию хотлинкинга изображений, хранящихся на вашем сервере.
Теперь, когда вы познакомились с различными способами ускорения работы сайта на WordPress не меняя хостинга и внедрили их на практике, снова измерьте скорость загрузки вашего ресурса и сравните полученные результаты.