Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Mengalihkan HTTP ke HTTPS dalam Go?

Bagaimana untuk Mengalihkan HTTP ke HTTPS dalam Go?

Patricia Arquette
Patricia Arquetteasal
2024-11-29 03:27:13369semak imbas

How to Redirect HTTP to HTTPS in Go?

Mengubah hala daripada HTTP ke HTTPS dalam Go

Untuk menguatkuasakan sambungan HTTPS sahaja, anda boleh mengubah hala permintaan HTTP kepada rakan sejawat HTTPS. Begini cara melakukannya dengan berkesan dalam Go:

1. Buat Pengendali Ubah Hala:

Tentukan pengendali HTTP tersuai yang mengendalikan pengalihan:

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

Pengendali ini akan mengubah hala semua permintaan HTTP ke URL HTTPS yang sepadan (gantikan "IPAddr" dengan alamat IP atau nama domain pelayan anda).

2. Ubah hala Trafik HTTP:

Mulakan pelayan HTTP yang mendengar pada port 80 dan menggunakan pengendali ubah hala:

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

Dengan persediaan ini, semua permintaan HTTP yang diterima pada port 80 akan diubah hala secara automatik ke rakan HTTPS mereka, memastikan sambungan selamat ke tapak web anda.

Atas ialah kandungan terperinci Bagaimana untuk Mengalihkan HTTP ke HTTPS dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn