Dukungan Let's Encrypt
Paket gin-gonic/autotls menyediakan HTTPS otomatis melalui Let’s Encrypt. Paket ini menangani penerbitan dan pembaruan sertifikat secara otomatis, sehingga Anda dapat menyajikan HTTPS dengan konfigurasi minimal.
Mulai cepat
Cara paling sederhana adalah memanggil autotls.Run dengan router Anda dan satu atau lebih nama domain:
package main
import ( "log"
"github.com/gin-gonic/autotls" "github.com/gin-gonic/gin")
func main() { router := gin.Default()
router.GET("/ping", func(c *gin.Context) { c.String(200, "pong") })
log.Fatal(autotls.Run(router, "example1.com", "example2.com"))}Manajer autocert kustom
Untuk kontrol lebih — seperti menentukan direktori cache sertifikat atau membatasi hostname yang diizinkan — gunakan autotls.RunWithManager dengan autocert.Manager kustom:
package main
import ( "log"
"github.com/gin-gonic/autotls" "github.com/gin-gonic/gin" "golang.org/x/crypto/acme/autocert")
func main() { router := gin.Default()
router.GET("/ping", func(c *gin.Context) { c.String(200, "pong") })
m := autocert.Manager{ Prompt: autocert.AcceptTOS, HostPolicy: autocert.HostWhitelist("example1.com", "example2.com"), Cache: autocert.DirCache("/var/www/.cache"), }
log.Fatal(autotls.RunWithManager(router, &m))}