summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/labstack/echo/cookbook/auto-tls/server.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/labstack/echo/cookbook/auto-tls/server.go')
-rw-r--r--vendor/github.com/labstack/echo/cookbook/auto-tls/server.go26
1 files changed, 26 insertions, 0 deletions
diff --git a/vendor/github.com/labstack/echo/cookbook/auto-tls/server.go b/vendor/github.com/labstack/echo/cookbook/auto-tls/server.go
new file mode 100644
index 00000000..4a8bbdfd
--- /dev/null
+++ b/vendor/github.com/labstack/echo/cookbook/auto-tls/server.go
@@ -0,0 +1,26 @@
+package main
+
+import (
+ "net/http"
+
+ "golang.org/x/crypto/acme/autocert"
+
+ "github.com/labstack/echo"
+ "github.com/labstack/echo/middleware"
+)
+
+func main() {
+ e := echo.New()
+ // e.AutoTLSManager.HostPolicy = autocert.HostWhitelist("<DOMAIN>")
+ // Cache certificates
+ e.AutoTLSManager.Cache = autocert.DirCache("/var/www/.cache")
+ e.Use(middleware.Recover())
+ e.Use(middleware.Logger())
+ e.GET("/", func(c echo.Context) error {
+ return c.HTML(http.StatusOK, `
+ <h1>Welcome to Echo!</h1>
+ <h3>TLS certificates automatically installed from Let's Encrypt :)</h3>
+ `)
+ })
+ e.Logger.Fatal(e.StartAutoTLS(":443"))
+}