Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk Ubah hala HTTP ke HTTPS dalam Aplikasi Web Go?

Bagaimana untuk Ubah hala HTTP ke HTTPS dalam Aplikasi Web Go?

DDD
Lepaskan: 2024-11-28 17:59:12
asal
327 orang telah melayarinya

How to Redirect HTTP to HTTPS in a Go Web Application?

Mengendalikan Pengalihan HTTP ke HTTPS dalam Go

Apabila menggunakan aplikasi web Go yang didayakan TLS, mengubah hala trafik HTTP ke HTTPS adalah penting untuk keselamatan dan mengekalkan sambungan yang selamat. Begini cara untuk mencapai matlamat ini dengan berkesan:

Laksanakan pengendali HTTP tersuai yang bertanggungjawab untuk mengendalikan pengalihan. Takrifkan fungsi seperti berikut:

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

Dalam pengendali ini, kami mencipta ubah hala HTTPS ke URI yang sama menggunakan kod status HTTP "Dipindahkan Secara Kekal" (301).

Seterusnya, kita perlu mengendalikan trafik HTTP dan mengubah halanya ke URL HTTPS. Tambahkan kod berikut pada fail Go utama anda:

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

Kod ini mencipta rutin Go yang berasingan yang mendengar pada port 80 untuk trafik HTTP. Apabila permintaan tiba, ia mengubah hala ke URL HTTPS menggunakan pengendali redirectToTls.

Pendekatan ini membolehkan anda mengubah hala trafik HTTP ke HTTPS dengan lancar dan mengekalkan sambungan selamat untuk aplikasi web Go anda.

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

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan