有些服務 的 web UI 需要執行在網頁的根路徑或特定路徑上
例如 transmission 就需要路徑 /transmission/web/
而 Syncthing 就必須是 / 才能正確打開Web UI
如果直接反向代理的話就會發現有許多圖片或restful api會找不到
我們需要在代理時將多餘的子路徑去除才會正確找到檔案
在Caddy2下可以這麼做
http://myhost.org {
handle_path /syncthing/* {
reverse_proxy http://localhost:8384 {
header_up Host {http.reverse_proxy.upstream.hostport}
}
}
}
其中handle_path就會在轉送要求時將 syncthing/ 這個前綴移除
這樣有需要的話還可以在同一個host上代理多個syncthing
例如
http://myhost.org {
handle_path /syncthing/* {
reverse_proxy http://localhost:8384 {
header_up Host {http.reverse_proxy.upstream.hostport}
}
}
handle_path /syncthing2/* {
reverse_proxy http://localhost:8385 {
header_up Host {http.reverse_proxy.upstream.hostport}
}
}
}
沒有留言:
張貼留言