Heim >Backend-Entwicklung >Golang >Wie leitet man HTTP in Go zu HTTPS um?

Wie leitet man HTTP in Go zu HTTPS um?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-29 03:27:13453Durchsuche

How to Redirect HTTP to HTTPS in Go?

Umleitung von HTTP zu HTTPS in Go

Um reine HTTPS-Verbindungen zu erzwingen, können Sie HTTP-Anfragen an HTTPS-Gegenstücke umleiten. So machen Sie es effektiv in Go:

1. Erstellen Sie einen Redirect-Handler:

Definieren Sie einen benutzerdefinierten HTTP-Handler, der die Umleitung übernimmt:

func redirectToTls(w http.ResponseWriter, r *http.Request) {
    http.Redirect(w, r, "https://IPAddr:443"+r.RequestURI, http.StatusMovedPermanently)
}

Dieser Handler leitet alle HTTP-Anfragen an die entsprechende HTTPS-URL um (ersetzen Sie „IPAddr“ mit der IP-Adresse oder dem Domänennamen Ihres Servers).

2. HTTP-Verkehr umleiten:

Starten Sie einen HTTP-Server, der auf Port 80 lauscht und den Redirect-Handler verwendet:

go func() {
    if err := http.ListenAndServe(":80", http.HandlerFunc(redirectToTls)); err != nil {
        log.Fatalf("ListenAndServe error: %v", err)
    }
}()

Mit diesem Setup werden alle HTTP-Anfragen, die auf Port 80 empfangen werden, umgeleitet werden automatisch zu ihren HTTPS-Gegenstücken umgeleitet, um eine sichere Verbindung zu Ihrer Website zu gewährleisten.

Das obige ist der detaillierte Inhalt vonWie leitet man HTTP in Go zu HTTPS um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn