Прискорення Роботи Сайту - Включення Режиму Keep-Alive
- Вступ Як працює режим Keep-Alive?
- Переваги режиму Keep-Alive:
- Що вам знадобиться
- Крок 1 - Аналіз вашого сайту
- Крок 2 - Включення режиму Keep-Alive
- Варіант 1 - Редагування файлу .htaccess
- Варіант 2 - Включення режиму Keep-Alive в Apache через файл httpd.conf
- Варіант 3 - Включення Keep-Alive в NGINX
- Варіант 4 - Сервер Windows (IIS)
- Крок 3 - Перевірка змін
- висновок
Вступ Як працює режим Keep-Alive?
У цьому керівництві ви навчитеся 4 способам, як включити режим Keep-Alive. Keep-Alive дозволяє браузеру користувача завантажувати весь необхідний контент (такий як JavaScript, CSS, зображення, відео і т.д.) через постійне TCP з'єднання, замість створення декількох запитів для кожного файлу. Це забезпечить швидкість і продуктивність, так як браузер вашого відвідувача зможе отримати все з одного, постійного HTTP з'єднання. Простими словами, Keep-Alive - це форма зв'язку між сервером і браузером здатна серйозно зменшити кількість запитів і швидкість завантаження сторінки. Ця схема дозволить вам зрозуміти різницю і перевага режиму Keep-Alive:
Переваги режиму Keep-Alive:
- Keep-Alive скорочує використання ресурсів сервера через меншої кількості згенерованих HTTP запитів. Це приносить користь всім користувачам, незалежно від їх хостингу (безкоштовного, віртуального або VPS).
- Режим Keep-Alive забезпечує конвеєрну (доставку запитів через одне і теж TCP з'єднання).
- HTTPS запитами потрібно більше часу і ресурсів центрального процесора. Якщо ви використовуєте HTTPS і SSL, Keep-Alive стане ще більш корисний.
- Зменшення затримки, загальне збільшення швидкості завантаження і продуктивності.
- Keep-Alive підтримується всіма сучасними браузерами.
- Режим Keep-Alive також принесе вам користь в сфері SEO оптимізації, через кращої продуктивності сайту.
Після всього цього, можна з упевненістю сказати, що Keep-Alive це відмінний спосіб для зменшення використання ресурсів сервера, і в той же час збільшення швидкості завантаження вашого сайту.
Що вам знадобиться
Перед тим, як ви почнете це керівництво, вам знадобиться наступне:
- Доступ до файлу .htaccess
- Доступ до httpd.conf (необов'язково)
- Доступ до HttpCoreModule (необов'язково)
Крок 1 - Аналіз вашого сайту
По-перше, ви повинні проаналізувати ваш сайт за допомогою таких інструментів як GTMetrix , Щоб визначити чи включений режим Keep-Alive на вашому сервері. Ось результати після аналізу тестової сторінки:
На деяких серверах або провайдерів послуг хостингу режим Keep-Alive включений за замовчуванням. Якщо ваші результати видають 100%, значить вам немає необхідності проводити будь-які дії.
Крок 2 - Включення режиму Keep-Alive
Існує кілька способів включення режиму Keep-Alive і їх вибір залежить від вашого сервера або провайдера послуг хостингу. Ось кілька варіантів:
Варіант 1 - Редагування файлу .htaccess
Додавання даного коду в ваш файл .htaccess має допомогти включити режим Keep-Alive. Включення режиму Keep-Alive через .htaccess замінить собою будь-які настройки сервера і включить постійне з'єднання.
<IfModule mod_headers.c> Header set Connection keep-alive </ ifModule>
Цей метод повинен працювати на більшості віртуальних хостингів на базі Linux. У разі, якщо ви не знаєте де знайти файл .htaccess, зверніться до цього керівництву .
Варіант 2 - Включення режиму Keep-Alive в Apache через файл httpd.conf
Якщо у вас є доступ до файлу налаштувань Apache, ви можете включити режим звідти. Ось як повинні виглядати настройки:
# # KeepAlive: Whether or not to allow persistent connections (more than # one request per connection). Set to "Off" to deactivate. # KeepAlive On # # MaxKeepAliveRequests: The maximum number of requests to allow # during a persistent connection. Set to 0 to allow an unlimited amount. # We recommend you leave this number high, for maximum performance. # MaxKeepAliveRequests 50 # # KeepAliveTimeout: Number of seconds to wait for the next request from the # same client on the same connection. # KeepAliveTimeout 10
- KeepAlive On включає режим KeepAlive.
- MaxKeepAliveRequests встановлює максимальну кількість запитів для одного з'єднання. 50 запитів для одного з'єднання вважається оптимальним.
- KeepAliveTimeout визначає, як довго сервер очікуватиме запит від клієнта. Рекомендується почати з менших значень, таких як 5 або 10 секунд і збільшувати їх у міру необхідності. Виставлення занадто великих значень може збільшити навантаження на сервер.
Якщо ви не можете знайти файл httpd.conf, запустіть наступну команду в командному рядку:
find / -name httpd.conf
Варіант 3 - Включення Keep-Alive в NGINX
У NGINX, Keep-Alive за замовчуванням зазвичай включений. Однак в деяких випадках він може бути виключений. Ви можете включити його використовуючи HttpCoreModule . Знайдіть значення keepalive_disable, яке в більшості випадків є причиною його відключення. Перед внесенням будь-яких змін переконайтеся, що дізналися причину по якій він був відключений.
Варіант 4 - Сервер Windows (IIS)
Якщо ви використовуєте сервер на базі Windows, ви можете легко включити режим Keep-Alive використовуючи командний рядок.
Дана команда включить режим Keep-Alive:
appcmd set config / section: httpProtocol / allowKeepAlive: true
На випадок якщо ви захочете його відключити використовуйте цю:
appcmd set config / section: httpProtocol / allowKeepAlive: false
Ви також можете звернутися до офіційного керівництва від Microsoft на цю тему.
Крок 3 - Перевірка змін
Після того, як режим Keep-Alive повністю включений, запустіть ще один аналіз в GTMetrix або будь-якому іншому сайті з аналізу продуктивності. Ось результати тестового сайту після включення режиму Keep-Alive:
Також можна дізнатися, чи Keep-Alive перевіривши header вашого HTTP. Це може бути зроблено через термінал, використовуючи наступну команду:
curl -I http://example.com/example.php
Ось приклад:
curl -i http://hostinger.com/index.php
результати:
HTTP / 1.1 301 Moved Permanently Connection: keep-alive Server: nginx Date: Fri, 23 Dec 2016 18:58:14 GMT Content-Type: text / html Content-Length: 178 Location: https://www.hostinger.com /index.php
Частина коду Connection: keep-alive означає, що режим Keep-Alive повністю функціонує.
висновок
Підводячи підсумок, включення режиму Keep-Alive це відмінний спосіб для поліпшення швидкості і продуктивності вашого сайту. Постійне TCP з'єднання забезпечить швидкий час завантаження і більш високу ефективність, тим самим роблячи ваших відвідувачів щасливими.
Керівництва по темі:
Вступ Як працює режим Keep-Alive?