mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2024-01-19 02:48:24 +00:00
Merge pull request #229 from Mohanson/patch-2
fix bug : master cann't redirect urlquery string
This commit is contained in:
commit
4d56039ad4
|
@ -123,7 +123,13 @@ func (ms *MasterServer) redirectHandler(w http.ResponseWriter, r *http.Request)
|
||||||
}
|
}
|
||||||
machines := ms.Topo.Lookup("", volumeId)
|
machines := ms.Topo.Lookup("", volumeId)
|
||||||
if machines != nil && len(machines) > 0 {
|
if machines != nil && len(machines) > 0 {
|
||||||
http.Redirect(w, r, util.NormalizeUrl(machines[rand.Intn(len(machines))].PublicUrl)+r.URL.Path, http.StatusMovedPermanently)
|
var url string
|
||||||
|
if r.URL.RawQuery != "" {
|
||||||
|
url = util.NormalizeUrl(machines[rand.Intn(len(machines))].PublicUrl) + r.URL.Path + "?" + r.URL.RawQuery
|
||||||
|
} else {
|
||||||
|
url = util.NormalizeUrl(machines[rand.Intn(len(machines))].PublicUrl) + r.URL.Path
|
||||||
|
}
|
||||||
|
http.Redirect(w, r, url, http.StatusMovedPermanently)
|
||||||
} else {
|
} else {
|
||||||
writeJsonError(w, r, http.StatusNotFound, fmt.Errorf("volume id %d not found", volumeId))
|
writeJsonError(w, r, http.StatusNotFound, fmt.Errorf("volume id %d not found", volumeId))
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue