Як прискорити сайт на wordpress в 17 разів

Скріншот виміру швидкості ПЕРЕД оптимізацією блогу:

Як прискорити сайт на wordpress в 17 разів

Як прискорити сайт на wordpress в 17 разів

Коротке резюме щодо прискорення сайту на WordPress

Основний вплив на швидкість надали такі фактори як зміна хостингу з використанням SSD дисків, оптимізація зображень, включення плагіна кешування W3 Total Cache, оптимізація БД сайту, видалення старих ревізій, включення стиснення файлів на стороні сервера, включення кеша для статичних файлів на стороні браузера. Далі слід повна розгорнута інструкція щодо прискорення сайту на WordPress.

Повна інструкція як прискорити сайт на WordPress

1. Якісний SSD хостинг, швидкий пінг

Хостинг повинен бути на SSD дисках. Бажано щоб сервера хостингу розташовувалися у вашій географічній зоні, на яку орієнтований сайт. Якщо хостинг буде на SSD, але в США, а ваш блог орієнтований на Україну і країни СНД, то толку від такого SSD буде мало. Так як буде йти довгий пінг для зв'язку з сервером. Тому місце розташування дата центру хостингу також важливо. Це важливий параметр хостингу - швидкий пінг, відгук серверів. І щоб хостер не робив оверселлінг послуг. Про тип хостингу - звичайно краще брати як VDS (віртуальний виділений сервер) з необхідними для вашого сайту параметрами, замість звичайного shared хостингу. Яку саме конфігурацію VDS вибрати - це залежить від навантаження яку ваш сайт створює не сервер і від розміру його добової аудиторії. Я б радив брати мінімум 1Gb Ram, 1 ядро ​​процесора і 10 Гб SSD. На початку у мене був VDS на звичайних HDD дисках, потім я поміняв його на SSD VDS хостинг.

Хостинг «До»:

VPS хостинг FreeHost.com.ua
Розмір диска: 30 Gb HDD
Пам'ять: 2 Gb RAM
Частота CPU: 2,2 Ghz
Кількість CPU: 1
Розташування серверів: Київ, Україна
Вартість: 12,8 $ / місяць

Хостинг «Після»:

VDS хостинг від ihor.ru
Розмір диска: 20 Gb HDD
Пам'ять: 1 Gb RAM
Частота CPU: 2,4 Ghz
Кількість CPU: 1
Розташування серверів: Київ, Україна
Вартість: 250 руб / місяць (приблизно 5 $ / місяць)

За скриншотам тесту швидкості завантаження сайту, видно що на старому хостингу час відповіді сайту досягало 12,3 секунди. Що непомірно багато. На новому хостингу від ihor.ru час відповіді сайту становило 1,2 секунди, що в рази швидше, в порівнянні зі старим хостингом. На цей показник вплинули SSD диски, і більш кращий дата центр з кращим і більш швидким каналом.

Зміна хостингу є однією з головних причин прискорення роботи сайту.

2. Оптимізувати зображення

Перевірте чи використовуєте ви оптимізовані jpg файли зображень. Які займають невеликий розмір і при цьому володіють хорошою якістю. У Photoshop зберігати такі зображення можна командою Save for Web (Ctrl + Shift + Alt + S), або через функцію export assets якщо ви використовуєте Photoshop CC. Не варто збережуть великі непрозорі картинки в .png форматі, він займає надто багато місця, і для цього краще використовувати jpeg формат. Формат png підходить для невеликої графіки яка використовується в оформленні сайту, в шаблоні, це можуть бути зображення кнопок, Буллет, зображення з прозорим фоном.

Деякі мініатюри до записів у мене були збережені в .png форматі, і розмір зображення досягав 300 Кб. Перезберегти зображення в jpg формат, кожна мініатюра стала займати 60-90 Кб в середньому. Таким чином вага деяких зображень зменшився в 3-4 рази, без втрати якості.

Існує спеціальний плагін для оптимізації зображень - WP Smush. Зізнаюся - я ним не користуюся, так як сам перед публікацією оптимізує всі зображення на предмет розміру і якості. Але якщо ви хочете автоматизувати процес - то використовуйте цей плагін.

3. Налаштування wp-config.php для прискорення роботи сайту на wordpress

Невеликий спосіб знизити завантаження на хостинг - відредагувати файл wp-config.php, який знаходиться в коровий директорії вашого сайту.

Знаходимо в файлі wp-config.php рядок:

Дане рішення дозволить скоротити кількість завантажуваних мовних налаштувань тільки на потрібні, в стандартному коді, WordPress завантажує багато непотрібних параметрів.

4. Налаштування Robots.txt - заборона на індексацію непотрібним сайтам.

Файл robots.txt регулює доступ різних пошукових роботів до сторінок сайту. Пропоную додати наступні рядки в файл, відразу ж перед директивою Host. Зробимо ми це для того щоб заборонити на сайт вхід різним пошуковим роботам, граббер і парсер, які можуть красти контент і створювати непотрібну навантаження на хостинг.

Наприклад, крім роботів від Yandex і Google на сайт також заходить пошуковий робот від пошукача Yahoo. Таким кодом можна заборонити Yahoo роботу переглядати сайт:

Я прописав наступні забороняють директиви:

Ось приклад мого файлу robots.txt

Заборонивши індексацію сайту цим способом, ви зможете знизити навантаження на хостинг, отже прискорити завантаження сайту, вивільнивши ресурси сервера.

5. Налаштування файлу .htaccess для зниження навантаження на сервер.

У файлі .htaccess - задаються додаткові команди для хостінга.С допомогою спеціальних налаштувань можна прибрати лішнюб навантаження на сервер, і прискорити роботу сайту.

Наступним кодом можна заборонити завантажувати зображення нашого сайту на сторонніх сайтах:

Після додавання цього коду, на чужому сайті замість вашого зображення буде виходити помилка.

Налаштування №2. У файлі .htaccess можна і слід вказати кешування для деяких об'єктів сайту (зображень, css і js фалів) щоб браузер кеш їх на своєму боці і не завантажував їх кожен раз. Для цього в .htaccess нижче першого коду додаємо наступний код:

Налаштування №3. Включимо gzip стиск сторінок перед відправкою їх користувачеві. Вставимо в .htaccess наступний код:

Налаштування №5. Якщо ви користуєтеся системою FeedBurner, то у вас явно встановлені плагіни, які відправляють RSS-контент на сайт FeedBurner. Сьогодні ви можете їх видалити, тому що перенаправити контент можна і без плагінів, зменшивши навантаження на хостинг.

6. Оптимізація бази даних

Важливе значення в швидкості роботи сайту має База Даних. При збереженні постів по кілька разів WordPress створює ревізії записи - стану постів в різні моменти їх редагування. В результаті з часом база даних містить велику кількість непотрібних ревізій постів, і їх необхідно очищати і оптимізувати. Зробити це можна за допомогою плагіна Optimize DB. Встановити його можна з адмінки WordPress. Наприклад запустивши його на своєму сайті я видалили понад 1200 ревізій постів. Що значно поліпшило швидкість роботи БД.

7. Оптимізація коду шаблону (теми)

Оптимізація коду теми полягає в тому щоб прибрати непотрібні запити і / або замінити їх на конкретні значення, наприклад назву блогу.

Налаштування №1. Знайти код, який відповідає за стилі у файлі header.php:

Увага. Не забудьте змінити yoursite.ru на посилання свого сайту.

Налаштування №2. Змінити код пінбеков:

Замінити з виправленням yoursite.ru на свою посилання:

Налаштування №3. Зміна коду RSS стрічки:

Замінити з виправленням yoursite.ru на свою посилання:

Налаштування №4. Досить часто в підвалі сайту (footer.php), розробники тим залишають абсолютно непотрібні запити до Бази даних. наприклад:

Деякі маленькі поради, які дозволять прискорити завантаження сайту:

4) Намагайтеся розміщувати всі скрипти в кінці сторінки перед закрвающім тегом , щоб спершу завантажувався основний сайт, а вже потім завантажувалися скрипти.

5) Всі додаткові коди на подобі лічильника сайту від Live Internet, або Google Analytics варто розміщувати в підвалі сайту, що б вони так само як і інші скрипти вантажилися тільки в найостаннішу чергу.

8. WordPress плагіни - для прискорення швидкості завантаження сайту

Кілька порад по роботі з плагінами, щоб оптимізувати їх навантаження на сайт.

1) Видаліть непотрібні плагіни. Непотрібні плагін Згодом працюють плагіни накопичуються, і можна назбирати багато непотрібних Пагін сформованими незалежно від займаного місця створюватимуть непотрібне навантаження на сайт.

2) Деактивуйте непотрібні плагіни. Постарайтеся використовувати якомога менше активувати плагінів. Деяким плагинам не обов'язково давати працювати постоянно.Напрімер плагін для оптимізації БД можна включати тільки на період роботи з ним.

10. Прискорення сайту за допомогою кешування

Кешування - від слова кеш, тобто збереження певних даних, які слід постійно завантажувати. Тобто сайт зберігає певні дані, і при переході на сторінку, браузер користувача просто викачує збережені дані у вигляді сторінки. Сайту не доводиться звертатися до сервера і бази даних, потім чекати відгуку, збирати потрібну інформацію і віддавати їх монітора вашого Новомосковсктеля.

1) WP Super Cache - кращий і безкоштовний плагін для кешування в WordPress. Рекомендую його встановити і використовувати. Також хороші плагіни WP Total Cache, WP Rocket.

2) Плагін Autoptimize - рекомендують використовувати разом з Wp Super Cache. Ніяких понад налаштувань робити не потрібно, просто активуйте плагін, в розділі «Настоянки» → «Autoptimize» поставте галочки, і плагін буде працювати. Будьте обережні, перевірте працездатність сайту після зміни налаштувань, що б застерегти себе від неприємностей.

3) Плагін WP Widget Cache - дозволяє кешувати віджети, з чим не справляється плагін Wp Super Cache.

11. Використовуйте CDN мережі для більш швидкого завантаження контенту

Ще один спосіб прискорити завантаження сайту - використовувати CDN мережі, Content Delivery Networks. Кожен раз коли користувач відкриває ваш сайт, він завантажує всю інформацію з вашого сервера, на якому розташований сайт. Якщо регіон користувача і регіон розташування сервера з вашим сайтом однакові, скажімо Київ Україна - то все олічной. Але якщо користувач заходить на Ваш сайт скажімо з Азії, або США, то доставка контенту до нього вже буде відбуватися з меншою скоость, тому що тут впливає відстань. Використання CDN мереж дає можливість завантажувати файли вашого сайту (зображення, скрипти, стилі) не тільки з вашого хостингу, а з дата-центрів по всьому світу. Таким чином заходячи на сайт, користувач автоматично завантажить файли сайту з найбільш близькою для нього точки з серверами CDN мережі, що значно прискорить завантаження сайту.

Можна ісюпользовать плагін Jetpack Photon який дає можливість використовувати CDN мережу WordPress для завантаження зображень вашого сайту.

Можна використовувати інші CDN мережі, наприклад MaxCDN, NGENIX або Amazon CloudFront. Я CDN мережі не використовував, тому в цьому пункті обмежимося лише коротким ознайомчим описом цієї технології.

Підключаючи свій сайт до CDN мережі, всі файли сайту будуть завантажуватися з найпотужніших дата-центрів по всій планеті. Зазвичай такі послуги платні, вартість починається від 9 $, і використовують їх дуже популярні сайти з величезною відвідуваністю.

Кілька дрібниць, які в також допоможуть вам прискорити завантаження сайту:

На цьому у мене все дорогі друзі, спасибі за ваше велике терпіння, сподіваюся вам сподобалося, до швидких зустрічей.

Ресурси по темі: