在 Go 中从 HTTP 重定向到 HTTPS
为了强制仅使用 HTTPS 连接,您可以将 HTTP 请求重定向到 HTTPS 对应项。以下是如何在 Go 中有效地做到这一点:
1.创建重定向处理程序:
定义处理重定向的自定义 HTTP 处理程序:
func redirectToTls(w http.ResponseWriter, r *http.Request) { http.Redirect(w, r, "https://IPAddr:443"+r.RequestURI, http.StatusMovedPermanently) }
此处理程序会将所有 HTTP 请求重定向到相应的 HTTPS URL(替换“IPAddr”)与您的服务器的 IP 地址或域名)。
2.重定向 HTTP 流量:
启动一个侦听端口 80 并使用重定向处理程序的 HTTP 服务器:
go func() { if err := http.ListenAndServe(":80", http.HandlerFunc(redirectToTls)); err != nil { log.Fatalf("ListenAndServe error: %v", err) } }()
通过此设置,端口 80 上收到的所有 HTTP 请求都将被转发。自动重定向到对应的 HTTPS,确保与您的网站的安全连接。
以上是如何在 Go 中将 HTTP 重定向到 HTTPS?的详细内容。更多信息请关注PHP中文网其他相关文章!