douyanzan9145
2015-10-15 09:57
浏览 33
已采纳

如何将* .appspot.com重定向到自定义域

How do you redirect your *.appspot.com domain to your custom domain. What I want is redirect the domains like this:

app-id.appspot.com -> mycustomdomain.com www.mycustomdomain.com -> mycustomdomain.com

Note: I am using go and gorilla mux.

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • dougouqin0763 2015-10-15 10:57
    已采纳

    You can do http.Handler combinatorics as described here to reuse code.

    In your case the combinator would look something like this (tweak it to your taste and requirements):

    func NewCanonicalDomainHandler(next http.HandlerFunc) http.HandlerFunc {
        return func(w http.ResponseWriter, r *http.Request) {
    
            if r.Host != "myapp.com" {
                u := *r.URL
                u.Host = "myapp.com" 
                u.Scheme = "http" 
                http.Redirect(w, r, u.String(), http.StatusMovedPermanently)
                return
            }
    
            next(w, r)
    
        }
    }
    

    The you can wrap your handlers with that:

     http.Handle("/foo", NewCanonicalDomainHandler(someHandler))
    
    打赏 评论

相关推荐 更多相似问题