用golang来实现的webserver通常是是这样的
//main.go package main import ( "fmt" "io" "net/http" ) func defaulthandler(w http.responsewriter, r *http.request) { io.writestring(w, "<h1>golang http</h1>") } func main() { mux := http.newservemux() mux.handlefunc("/", defaulthandler) err := http.listenandserve(":80", mux) if err != nil { fmt.println(err.error()) } }
http://localhosthttps://localhost
那么如何用golang来实现https呢?
//main.go package main import ( "fmt" "io" "net/http" ) func defaulthandler(w http.responsewriter, r *http.request) { io.writestring(w, "<h1>golang https</h1>") } func main() { mux := http.newservemux() mux.handlefunc("/", defaulthandler) certfile := "/etc/letsencrypt/live/www.taadis.com/cert.pem" keyfile := "/etc/letsencrypt/live/www.taadis.com/privkey.pem" err := http.listenandservetls(":443", certfile, keyfile, mux) if err != nil { fmt.println(err.error()) } }
http.listenandserve()listenandservetls()
到此这篇关于golang实现http重定向https的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持。