瀏覽代碼

updated redirect handling for domains and https defaults

tags/v1.0.0
Remco 9 年之前
父節點
當前提交
c6af437480
共有 1 個檔案被更改,包括 15 行新增6 行删除
  1. +15
    -6
      transfersh-server/handlers.go

+ 15
- 6
transfersh-server/handlers.go 查看文件

@@ -506,13 +506,22 @@ func getHandler(w http.ResponseWriter, r *http.Request) {

func RedirectHandler(h http.Handler) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
if ipAddrFromRemoteAddr(r.Host) != "transfer.sh" && ipAddrFromRemoteAddr(r.Host) != "127.0.0.1" && r.URL.Path != "/health.html" {
http.Redirect(w, r, "https://transfer.sh/", 301)
return
}
if r.URL.Path == "/health.html" {
} else if ipAddrFromRemoteAddr(r.Host) == "127.0.0.1" {
} else if ipAddrFromRemoteAddr(r.Host) == "transfersh.elasticbeanstalk.com" {
} else if ipAddrFromRemoteAddr(r.Host) == "jxm5d6emw5rknovg.onion" {
if r.Header.Get("X-Forwarded-Proto") != "https" && r.Method == "GET" {

if ipAddrFromRemoteAddr(r.Host) == "transfer.sh" && r.Header.Get("X-Forwarded-Proto") != "https" && r.Method == "GET" {
http.Redirect(w, r, "https://transfer.sh/", 301)
http.Redirect(w, r, "https://jxm5d6emw5rknovg.onion"+r.RequestURI, 301)
return
}
} else if ipAddrFromRemoteAddr(r.Host) == "transfer.sh" {
if r.Header.Get("X-Forwarded-Proto") != "https" && r.Method == "GET" {
http.Redirect(w, r, "https://transfer.sh"+r.RequestURI, 301)
return
}
} else if ipAddrFromRemoteAddr(r.Host) != "transfer.sh" {
http.Redirect(w, r, "https://transfer.sh"+r.RequestURI, 301)
return
}



Loading…
取消
儲存