-1
私は1つのサーバー(単一IP)上で稼働する多数のWebサイトを持っており、それらはすべて高ポートで実行されるので、それらを実行するためにルートは必要ありません。goを使ってポート80からポートXXXXにシームレスに転送/転送する方法は?
http://address001.com/と言ったら、ポート4444のデータをこのリクエストを行った人にシームレスにパイプしたいと思っています。もし誰かがhttp://address002.com/を訪問したら、ポート5555からデータをパイプしたいと思っています。
Goでこれを行うにはどうすればよいですか?
これまでのところ、私はこのようになりますハンドラ関数を持っている:
func home(w http.ResponseWriter, r *http.Request) {
if strings.Contains(r.Host, "address001") {
// ???
}
}
は、それだけに簡単にされることはありませんですhttputilのReverseProxy
を使用することができます'nginx'を使って、あなたが望むプロセスにリクエストをプロキシしますか? –
いいえ、私はそれをそうしました。 – hermancain
あなたがここで説明したことは、nginx、apache、caddyなどの方が簡単です。何が必要なのですか?リバースプロキシを作成する必要がある場合は、多数のオンラインサンプルのうち何が機能しませんか? – JimB