Editor php telah mendapati bahawa apabila membina aplikasi web menggunakan AutoTLS dan Gin (gin-gonic), anda mungkin menghadapi masalah: sijil SSL tidak boleh dibaca. Isu ini mungkin menghalang aplikasi daripada menggunakan protokol HTTPS dengan betul untuk komunikasi selamat. Walaupun kedua-dua AutoTLS dan Gin adalah alat yang sangat popular, terdapat beberapa batasan semasa mengendalikan sijil SSL. Dalam artikel ini, kami akan membincangkan isu ini dan menyediakan beberapa penyelesaian untuk membantu pembangun mengatasi dilema ini.
Saya cuba menggunakan gin (gin-gonic) untuk mencipta persekitaran perkhidmatan mikro dengan kod mudah:
package main import ( "example.com/MSHandler/ms1" "log" "github.com/gin-gonic/autotls" "github.com/gin-gonic/gin" ) func main() { // Create GIN router := gin.Default() // Call MS // Call MS1 router.GET("/ms1", ms1.CallMS1) // Run GIN // router.Run(":443") // Run with Let's Encrypt log.Fatal(autotls.Run(router, "exampleMS.org")) }
Setiap kali saya cuba mengakses laman web, ia akan ditandakan sebagai tidak selamat. Sijil ssl saya dijana menggunakan openssl dan ia (.key dan .pem) kedua-duanya terletak dalam folder ~/.ssl (saya menggunakan ubuntu). Adakah sijil saya perlu berada dalam folder yang sama dengan permohonan saya?
Saya membaca beberapa artikel dalam talian dan di sini tetapi tiada langsung menunjuk kepada autotl.
Pakej github.com/gin-gonic/autotls
在下面使用 golang.org/x/crypto/acme/autocert
. Jadi jika anda ingin membaca dokumentasi, pergi ke https://pkg .go.dev/golang.org/x/crypto/acme/autocert. Cara Let's Encrypt berfungsi ialah dokumen yang mesti dibaca.
Nota:
autocert
从 https://www.php.cn/link/1c9884d82761f8718077f56cee0c1da4 应用证书,因此您不需要提供您自己使用 openssl
生成的证书。如果您想使用自签名证书,则不需要 autocert
(和 autotls
Mohon sijil daripada
openssl
. Jika anda ingin menggunakan sijil yang ditandatangani sendiri, anda tidak perlu ). Dan secara lalai, pelanggan tidak mempercayai sijil yang ditandatangani sendiri. autocert
, rangkaian awam sepatutnya tersedia untuk permohonan anda. exampleMS.org
)。并且这个请求发送到HTTP端口80
Atas ialah kandungan terperinci AutoTLS dan Gin (gin-gonic) tidak boleh membaca sijil SSL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!