Let's Encryptの登場以来、暗号化されたウェブサイトは標準的なものとなっています。SSL証明書はローカル開発においても事実上不可欠であり(例えば、 navigator.geolocationはローカルでのSSL暗号化を必要とします)、Chromeバージョン58以降、 CN(Common Name)のサポートは終了し、SAN(Subject Alternative Name)が必須となりました。そのため、Chromeは従来の方法で作成されたSSL証明書を受け付けなくなりました。

ZeroSSLのようなオンラインツールを使用して証明書を作成したり、`--ignore-certificate-errors`やフラグ`chrome://flags/#allow-insecure-localhost`などを使用して有効な証明書なしでChromeが動作するように設定することもできますが、ここではOpenSSLを使用してローカルで自己署名証明書を作成し、SANを含めてChromeで完全に受け入れられるようにします。この1行のコマンドで必要な処理がすべて実行されます(`www.tld.local`を目的のドメインに置き換えるだけで済みます)。:
61b7be9883ad31712c52a59252a4c9c4
以来OpenSSLは、残念ながらSANを指定する直接の引数はありません、最初に作成された設定ファイルは、OpenSSLはそれと呼ばれ、ファイルが削除されます。 Windowsユーザーは、 Cygwin (およびbash -c "...")または新しいWSLを使用して、このコマンドを簡単に実行できます。 結果として得られる2つのファイルwww.tld.local.keyとwww.tld.local.certは、たとえばMAMPで選択できます。:

次に、Windowsユーザーは、「信頼されたルート認証機関」の「ユーザー証明書の管理」(certmgr)の下にロードします。:

最後に、Chromeを再起動し(chrome://再起動)、緑色のロックをお楽しみください:
