Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Ubah hala HTTP ke HTTPS dengan Cekap dalam Go?
Mengubah hala HTTP ke HTTPS dalam Go
Artikel ini menangani isu mengubah hala trafik HTTP ke HTTPS dalam aplikasi Go. Walaupun berjaya menyediakan TLS, memahami cara melaksanakan pengalihan ini dengan cekap adalah penting.
Menubuhkan Pengendali Pengalihan
Untuk memulakan pengalihan, cipta pengendali yang mengendalikan pengalihan kepada HTTPS. Berikut ialah contoh:
func redirectToTls(w http.ResponseWriter, r *http.Request) { http.Redirect(w, r, "https://IPAddr:443"+r.RequestURI, http.StatusMovedPermanently) }
Pengendali ini akan mengubah hala permintaan HTTP kepada rakan HTTPS yang sepadan, menggunakan alamat IP dan port 443.
Mengubah hala Trafik HTTP
Setelah pengendali ubah hala ditubuhkan, anda perlu mengubah hala trafik HTTP masuk kepadanya. Ini boleh dicapai dengan melancarkan goroutine yang mendengar pada port 80 dan menyediakan pengendali ubah hala:
go func() { if err := http.ListenAndServe(":80", http.HandlerFunc(redirectToTls)); err != nil { log.Fatalf("ListenAndServe error: %v", err) } }()
Groutine ini akan terus mendengar pada port 80 dan mengubah hala sebarang permintaan HTTP yang masuk ke HTTPS, dengan berkesan memastikan semua trafik disulitkan.
Atas ialah kandungan terperinci Bagaimana untuk Ubah hala HTTP ke HTTPS dengan Cekap dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!