Heim >Backend-Entwicklung >Golang >Wie leite ich HTTP in einer Go-Anwendung zu HTTPS um?
So leiten Sie HTTP-Verkehr in Go zu HTTPS um
Problem:
Sie haben aktiviertes TLS, sodass Ihre Go-Anwendung HTTPS-Verbindungen akzeptieren kann. Sie möchten jedoch auch den HTTP-Verkehr auf HTTPS umleiten.
Lösung:
Erstellen Sie einen benutzerdefinierten Handler zur Verarbeitung des HTTP-Verkehrs und leiten Sie ihn auf HTTPS um:
import ( "net/http" ) func redirectToTls(w http.ResponseWriter, r *http.Request) { // If you are serving on Go servers, you can use "r.Host" http.Redirect(w, r, "https://your-domain-name.com"+r.RequestURI, http.StatusMovedPermanently) }
Fügen Sie als Nächstes den folgenden Code hinzu, um den HTTP-Verkehr umzuleiten:
go func() { if err := http.ListenAndServe(":80", http.HandlerFunc(redirectToTls)); err != nil { log.Fatalf("ListenAndServe error: %v", err) } }()
Dadurch wird ein separater Code gestartet Goroutine zur Verarbeitung des HTTP-Verkehrs, bei der eingehende HTTP-Anfragen an ihre HTTPS-Gegenstücke umgeleitet werden.
Das obige ist der detaillierte Inhalt vonWie leite ich HTTP in einer Go-Anwendung zu HTTPS um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!