✅ WEB і WordPress новини, теми, плагіни. Тут ми ділимося порадами і кращими рішеннями для сайтів.

Як зробити сторінку повністю безпечною через підключення SSL?

5

У цій публікації показано конфігурації, необхідні для роботи SSL (на порту 443) на серверах Ubuntu.

Однак для деяких сторінок (особливо старих дописів/сторінок) відображатиметься інформація «не повністю безпечна», якщо ви використовуєте браузер Chrome,

Як зробити сторінку повністю безпечною через підключення SSL?

ssl-no-so-secure

Причини, як сказано, полягають у тому, що сторінка використовує деякі незахищені підключення до файлів зображень, css або javascript. Якщо ви перейдете на сторінку https://www.whynopadlock.com/ (онлайн-інструмент перевірки SSL), ви зможете детально ознайомитися з причинами, чому ця сторінка не зовсім безпечна.

Як зробити сторінку повністю безпечною через підключення SSL?

Інструмент перевірки SSL

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

Як зробити сторінку повністю безпечною через підключення SSL?

Деталі/підключення SSL у консолі браузера Google Chrome

Якщо ми не зробимо ці зображення/js/css ресурси SSL, тоді хтось зможе/може змінити вигляд веб-сайту, унеможливлюючи використання SSL.

Крім того, якщо ви використовуєте HTML -тег iframe для включення сторінок, вони також повинні використовувати HTTPS, інакше це буде заблоковано більшістю браузерів через потенційні ризики для безпеки.

Крім того, якщо у вас є форми з небезпечними URL-адресами (поле дії ), ви все одно отримуватимете попередження. Наприклад, вам слід використовувати SSL-версію форми пошуку Google замість версії без SSL.

Якщо ресурси розміщено на іншому домені

Нема чого робити, якщо ресурси розміщені на інших доменах. У цьому випадку можна використовувати версії HTTPS, якщо вони надаються, але це не завжди можливо. Великі компанії мають як HTTP, так і HTTPS версії, наприклад, Google. Якщо ні, ви можете завантажити копію та завантажити на свій власний FTP і таким чином змінити URL-адресу, яка є безпечною.

SQL для зміни URL-адрес для публікацій WordPress

Якщо ви користуєтеся WordPress, ви можете використовувати наступну URL-адресу, щоб змінити URL-адреси в публікації.

UPDATE wp_posts SET post_content = REPLACE (post_content, '

Наступне також змінює GUID для кожної публікації.

UPDATE wp_posts SET guid = REPLACE (guid, '

І вам слід увійти в панель керування WordPress, щоб оновити URL-адресу сайту.

Як зробити сторінку повністю безпечною через підключення SSL?

Налаштування панелі керування wordpress ssl

Крім того, ви можете зробити це через SQL:

UPDATE wp_options SET option_value = replace(option_value, '

Якщо ви розміщуєте кілька веб-сайтів/доменів на одній IP-адресі (VPS або виділений сервер)

Як ви можете бачити на наведених вище знімках екрана, якщо ви розміщуєте кілька веб-сайтів/доменів на одній IP-адресі та використовуєте ці зображення у своїх публікаціях, ви можете зробити ці домени також безпечними (придбавши нові сертифікати SSL) або зміна URL-адрес.

Для другого методу ви можете завантажити зображення/css/js і повторно завантажити в домен із підтримкою SSL, який ви використовуєте, або зіставити URL-адреси ресурсів без SSL із доменами з підтримкою SSL.

Наприклад, ви можете увійти на свій VPS або виділений сервер і створити символічне посилання (подібно до ярликів у Windows).

ln -s  /var/non-ssl-domains/images /var/ssl-domain/images

Потім ви можете замінити http://non-ssl-domains/images на https://ssl-domain/images за допомогою наведеного вище SQL.

Іноді за символічними посиланнями не слідує сервер Apache, і в цьому випадку ви, звичайно, можете створити жорсткі посилання натомість (без опції -s)

ln  /var/non-ssl-domains/images /var/ssl-domain/images

Використання PHP для перенаправлення незахищених URL-адрес на безпечний SSL

Іншим рішенням є створення PHP -файлу на основі параметрів $_GET URL-адрес і читання файлів ресурсів з іншого домену, оскільки всі вони розміщені на одній машині (VPS або виділеному сервері).

  function hell() {     header($_SERVER['SERVER_PROTOCOL']. ' 404 Not Found');     die();   }   $r = '';   if (isset($_GET['r'])) {     $r = trim($_GET['r']);   }   if (!strlen($r)) {     hell();   }   $url = '/var/www/codingforspeed.com/images/'.$r;   if (!is_file($url)) {     hell();     }   $ext = strtoupper(pathinfo($url, PATHINFO_EXTENSION));   $type = exif_imagetype($url);   if (($ext == 'JPG') && ($type == IMAGETYPE_JPEG)) {             header('Content-Disposition: inline');             header("Content-Type: image/jpeg");             header("Content-Length: ". filesize($url));             header("Content-Transfer-Encoding: binaryn");             $im = imagecreatefromjpeg($url);             imagejpeg($im);             imagedestroy($im);             die();   }   else if (($ext == 'GIF') && ($type == IMAGETYPE_GIF)) {             header('Content-Disposition: inline');             header("Content-Type: image/gif");             header("Content-Length: ". filesize($url));             header("Content-Transfer-Encoding: binaryn");             readfile($url);               die();   }   else if (($ext == 'PNG') && ($type == IMAGETYPE_PNG)) {             header('Content-Disposition: inline');             header("Content-Type: image/png");             header("Content-Length: ". filesize($url));             header("Content-Transfer-Encoding: binaryn");             $im = imagecreatefrompng($url);             imagepng($im);             imagedestroy($im);             die();   }   else if (($ext == 'BMP') && ($type == IMAGETYPE_BMP)) {             header('Content-Disposition: inline');             header("Content-Type: image/bmp");             header("Content-Length: ". filesize($url));             header("Content-Transfer-Encoding: binaryn");             $im = imagecreatefrombmp($url);             imagebmp($im);             imagedestroy($im);               die();   }   else {     hell();   }

Збережіть наведений вище код PHP у вашому домені SSL, наприклад, https://helloacm.com/ssl, і зробіть його index.php.

Тоді, наприклад, якщо попередня незахищена URL-адреса – https://codingforspeed.com/images/logo.png, то нова безпечна URL-адреса SSL – https://helloacm.com/ssl/?rlogo.png

І відповідно замініть URL-адреси в wordpress, використовуючи вищезазначений SQL. Ці методи тимчасові, оскільки, якщо у вас є бюджет, краще зробити всі ваші домени SSL.

Ласкаво просимо у світ SSL! І в якості нагороди деякі пошукові системи (алгоритми Google) віддають перевагу сторінкам SSL над незахищеним HTTP. Ваші SSL-сторінки, як правило, отримують кращий SEO.

URL-адреса з подвійною косою рискою

Іноді ви можете побачити, що ‘ // helloacm.com/images/logo.png ‘. Подвійні косі риски автоматично визначатимуть протокол поточної сторінки. Якщо це HTTP і він використовуватиме HTTP, або якщо це HTTPS, тоді доступ до зображення буде здійснюватися через HTTPS. Ви можете замінити всі URL-адреси подвійними скісними рисками для кращої сумісності, тобто незалежно від того, який протокол використовується, ви завжди на правильному. Просто як це!

htaccess URL mod rewrite

Після повної перевірки ваших URL-адрес SSL вам слід перемістити попередні незахищені URL-адреси до SSL. Ви можете зробити це в .htaccess (apache server mod rewrite). Просто помістіть наступні два рядки в кореневу папку вашого веб-сайту, наприклад, блог wordpress.

Перенаправлення 301 повідомляє пошуковій системі, що рейтинг SEO поточної незахищеної URL-адреси має бути перенесений на SSL. Тепер почніть поширювати свій SSL замість незахищеного HTTP.

Джерело запису: helloacm.com

Цей веб -сайт використовує файли cookie, щоб покращити ваш досвід. Ми припустимо, що з цим все гаразд, але ви можете відмовитися, якщо захочете. Прийняти Читати далі