Зміст статті
Протокол HTTPS вважають по праву однією з ключових технологій сучасного інтернету і щоб убезпечити особисті дані своїх користувачів, дана технологія повинна бути підключена на сайті обов’язково. У нашій статті ви дізнаєтеся про те, що таке HTTPS, чим він відрізняється від протоколу HTTP, якому він прийшов на заміну, як він працює, навіщо потрібен і як його впровадити на свій сайт?
Відмінності HTTP та HTTPS
HTTP – це протокол передачі гіпертексту (абревіатура утворена від англ. слів Hyper Text Transfer Protocol). З цим протоколом ми стикаємося щодня, коли відкриваємо браузер. Оскільки гіпертекст є всім нам знайомі web-сторінки.
HTTPS – це спеціальне модифіковане налаштування для протоколу HTTP, яка використовує механізми шифрування під час обміну даними між сервером та браузером. Тобто будь-який сайт, який працює з HTTP може перейти на захищений HTTPS, де буква Sякраз і означає Secure (Захист) . Для цього достатньо лише правильно налаштувати існуючий сервер та підключити до нього механізм шифрування.
Наявність HTTPS – фактор просування сайту в пошуковій видачі в Google, по суті це одна із стандартних вимог у SEO.
Переваги сайтів на HTTPS
Чим хороший HTTPS протокол і навіщо його встановлювати:
- Особисті дані користувачів передаються в зашифрованому вигляді.
- Безпечна автентифікація на сайті гарантує захист від атак з перехопленням.
- Найменші зміни або спотворення даних у процесі підключення до сервера фіксуються і припиняються, незалежно від того, випадково це сталося або навмисно.</ li>
- Сайт, який працює на протоколі HTTPS, підвищує довіру з боку користувачів та більш релевантний для пошукових систем.
- Електронну платіжну систему можна встановити лише на сайт із захищеним протоколом.
- Якщо на сайті є поля внесення даних для зворотного зв’язку, а шифрування не підтримується, у браузері він буде позначений як небезпечний.
Недоліки HTTPS
Згадаємо також і інший бік медалі. З мінусів HTTPS виділимо основні:
- Сервер потрібно переналаштувати. Якщо немає панелі керування або підтримки готових рішень щодо інтеграції сертифікатів шифрування, то знадобляться спеціальні знання та навички, щоб зробити це самостійно. Або ж можна найняти профільного фахівця.
- Шифрування даних частково підвищує навантаження на сервер і збільшує час відгуку сайту, тому що йому потрібно більше часу на обробку запитів.
- Сгенерувати SSL/TLS-сертифікат можна хоч самому, але він не стане довіреним, поки його не затвердить спеціальна організація. Довірені сертифікати найчастіше платні, а це додаткові витрати на утримання сайту.
- Є безкоштовні альтернативи, наприклад, від Let’s Encrypt або Cloudflare, але вони підключаються на невеликий проміжок часу та потребують частої заміни.
- Після повного переходу з HTTP на HTTPS сайт може «вилетіти» з пошукової видачі доти, доки не буде проіндексована версія HTTPS, але це якщо неправильно провести підготовку до переїзду.
Як підготувати сайт до переїзду на HTTPS і, відповідно, підключити захищений протокол
Щоб обійтись без втрат у трафіку, потрібно ретельно підготувати сайт.
Спочатку must have зберегти резервну копію БД та файлів сайту.
Далі робимо таке.
Замінюємо всі внутрішні посилання сайту з абсолютних на відносні
Приклад:
- Повне посилання – https://wedex.com.ua/uslugi/prodvizhenie-sajtov-seo/
- Відносна – //wedex.com.ua/uslugi/prodvizhenie-sajtov-seo/
Якщо коротко, потрібно видалити назву протоколу внутрішніх посилань на сайті.
- Також варто звернути увагу на скрипти
Якщо скрипт на сайті використовує не захищене з’єднання, в ньому також потрібно замінити URL на відносний.
Ця рекомендація відноситься до старих рідко використовуваних скриптів, так як популярні сервіси вже давно користуються захищеним з’єднанням.
- Зверніть увагу на контент
В принципі, потрібно застосувати ті самі кроки, що й раніше — виправити посилання кожного зображення, відео, документа. Після переїзду кожен медіафайл має відкриватися за протоколом HTTPS.
Установка SSL-сертифіката
Secure Socket Layer (SSL) необхідний для роботи протоколу HTTPS. Значок закритого замка в адресному рядку браузера підтверджує його наявність. Це означає, що сайт зможе захистити дані користувача.
Безкоштовні сертифікати (self-signed) підійдуть для використання у внутрішній мережі або для службових цілей, але не підходять для публічних сайтів та інтернет-магазинів.
Відмінність між безкоштовним та платним SSL у тому, що в другому варіанті дані перевірені та підтверджені центром сертифікації.
Найпростіший спосіб замовити сертифікат – звернутися до свого хостинг-провайдера. Якщо це не варіант, найпопулярніші центри сертифікації: Comodo, Symantec, Trustwave, Geotrust, Thawte.
Потім сертифікат треба активувати, заповнивши технічні дані та вказавши контакти. Зробити це можна на сайті компанії, де ви придбали SSL.
Фінальне налаштування сайту
Після встановлення SSL адреса сайту буде починатися з HTTPS, але в індексі все ще буде розташована стара версія сайту. Тому у robots.txt потрібно виправити директиву Sitemap.xml:
Sitemap: http://site.com/sitemap.xml
на
Sitemap: https://site.com/sitemap.xml
Далі зайдіть у Google Search Console і додайте версію сайту з HTTPS .
Google розуміє, що адреси з HTTP і HTTPS ведуть на той самий сайт, і віддає пріоритет при індексуванні саме сторінкам з https.
Налаштовуємо 301 редирект
Для того щоб при переході на HTTPS збереглися позиції сайту та трафік, необхідно налаштувати 301 редирект.
Для налаштування редиректу треба відкрити файл .htaccess – він розташовується в кореневій папці сайту на FTP. Якщо файлу .htaccess немає, його треба створити.
Додайте у файл такі рядки:
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
Якщо цей редирект не спрацює, спробуйте такий варіант:
RewriteEngine On
RewriteCond %{HTTPS} =on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
Якщо і тепер нічого не вийшло, і має місце циклічна переадресація, тобто третій варіант:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
В результаті користувачі та роботи з усіх сторінок сайту з HTTP будуть перенаправлені на сторінки з HTTPS. Також передаватиметься вага сайту.