З часів Let's Encrypt зашифровані веб-сайти тепер є стандартними. Навіть при локальній розробці, SSL-сертифікати є необхідними (наприклад, Navigator.geolocation вимагає локального шифрування SSL). Починаючи з версії 58 Chrome, підтримку CN (Загальна назва) відмовлено, а SAN (Тема Альтернативна назва) стала обов’язковою. Як результат, Chrome раптом більше не приймає всіх традиційно створених сертифікатів SSL.
Ви можете використовувати онлайн-інструменти, такі як ZeroSSL, для створення сертифікатів або використовувати параметри запуску, такі як --ignore-certificate-errors або прапор chrome: // flags / # allow-insecure-localhost, щоб змусити Chrome працювати без дійсних сертифікатів; Однак ми хочемо використовувати OpenSSL для створення локально самопідписаних сертифікатів, які містять SAN і повністю прийняті Chrome. Цей однокласний лайнер піклується про все необхідне (лише www.tld.local потрібно обміняти на бажаний домен):
61b7be9883ad31712c52a59252a4c9c4
Оскільки OpenSSL, на жаль, не має прямих аргументів для вказівки SAN, спочатку створюється конфігураційний файл, разом із ним викликається OpenSSL, а потім файл видаляється. Користувачі Windows можуть легко виконати цю команду або за допомогою Cygwin (і bash -c "..."), або за допомогою нового WSL . Два отримані файли www.tld.local.key та www.tld.local.cert потім можна вибрати в MAMP, наприклад:
Потім користувачі Windows завантажуються в розділі "Керування сертифікатами користувачів" (certmgr) у розділі "Довірені кореневі органи сертифікації":
Нарешті, перезапустіть Chrome (chrome: // restart) і насолоджуйтесь зеленим замком: