比如我要把www.taadis.com
永久重定向到taadis.com
//main.go
package main
import (
"log"
"net/http"
)
//301永久重定向
func Redirect301Handler(w http.ResponseWriter, r *http.Request) {
http.Redirect(w, r, "https://taadis.com", http.StatusMovedPermanently)
}
func main() {
mux := http.NewServeMux()
mux.HandleFunc("/", Redirect301Handler)
err := http.ListenAndServe(":80", mux)
if err != nil {
log.Println(err.Error())
}
}
总结
这里会有个些问题:
当服务器上有多个golang webserver
时, 会相互占用":80"端口,
所以通用的做法还是通过apache/nginx
来统一做301等各类重定向服务,
来源:oschina
链接:https://my.oschina.net/u/2912152/blog/840470