php エディター Xiaoxin は、AutoTLS と Jin (gin-gonic) を使用して Web アプリケーションを構築すると、SSL 証明書を読み取れないという問題が発生する可能性があることを発見しました。この問題により、アプリケーションが安全な通信のために HTTPS プロトコルを適切に使用できなくなる可能性があります。 AutoTLS と Gin はどちらも非常に人気のあるツールですが、SSL 証明書の処理に関してはいくつかの制限があります。この記事では、この問題を詳しく掘り下げ、開発者がこのジレンマを克服するのに役立つ解決策をいくつか紹介します。
gin (gin-gonic) を使って簡単なコードでマイクロサービス環境を構築しようとしています:
リーリーWeb サイトにアクセスしようとするたびに、安全でないとしてマークされます。私の ssl 証明書は openssl を使用して生成され、それら (.key と .pem) は両方とも ~/.ssl フォルダーにあります (私は ubuntu を使用しています)。証明書はアプリケーションと同じフォルダーに存在する必要がありますか?
オンラインやここでいくつかの記事を読みましたが、autotls に直接言及するものはありません。
Packagegithub.com/gin-gonic/autotls
以下を使用します golang.org/x/crypto/acme/autocert
。したがって、ドキュメントを読みたい場合は、https://pkg .go.dev/golang.org/x/crypto/acme/autocert にアクセスしてください。 Let's Encrypt の仕組み は必読のドキュメントです。
コメント:
autocert
https://www.php.cn/link/1c9884d82761f8718077f56cee0c1da4 から証明書を適用するため、## を使用するために自分で証明書を提供する必要はありません#openssl 証明書が生成されました。自己署名証明書を使用する場合は、
autocert (および
autotls) は必要ありません。また、デフォルトでは、クライアントは自己署名証明書を信頼しません。
autocert 新しい ECDSA P-256 キーが作成されます。独自の秘密キーを使用する場合は、
を使用してキー autocert.Manager. を設定します。
https://www.php.cn/link/1c9884d82761f8718077f56cee0c1da4 から証明書を申請する必要があるため、アプリケーションでパブリック ネットワークを利用できる必要があります。
exampleMS.org です)。そして、このリクエストは HTTP ポート
80 に送信されます。したがって、このポートもブロックされていないことを確認する必要があります。より正確に: ###
Let’s Encrypt CA は、要求されたドメイン名を調べて、1 つ以上のチャレンジのセットを発行します。これらは、プロキシがドメインの制御を証明するためのさまざまな方法です。たとえば、CA はエージェントに選択肢を与えるかもしれません:
example.com で DNS レコードを構成するか、
以上がAutoTLS と Gin (gin-gonic) は SSL 証明書を読み取れませんの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。