1

ポート28081で実行され、次のようにプロキシ用に構成されたhttpdが組み込まれたtomcatを備えたスプリングブートWebアプリケーションがあります。

ProxyPass / http://localhost:28081/
ProxyPassReverse / http://localhost:28081/

次に、jsp ページで完全なリクエスト URL を Silverlight ウィジェットに渡す必要があります。

${pageContext.request.serverName}:${pageContext.request.serverPort}

に解決されhttp://localhost:28081ます。

そこで に頼ろうと思ったX-Forwarded-Hostのですが、カンマで区切られた複数のプロキシアドレスが含まれている場合があります。アドレスの順序が保持されることを信頼しても安全かどうかはわかりません。

jsp、httpd構成、またはコントローラーコードでこれを行うためのより良い方法はありますか?

4

2 に答える 2

5

コントローラで使用できますServletUriComponentsBuilder: リクエストから初期化すると、プロキシ ヘッダーが選択され、オリジンの URI が作成されますString uri = ServletUriComponentsBuilder.fromCurrentRequest().build().toString()

于 2015-03-11T10:06:00.890 に答える
0

ProxyPreserveHost元のヘッダー、つまり外向きのドメイン名を保持するために httpd構成で使用できますHostが、ポートを渡す良い方法が思いつきません。

于 2015-03-11T10:06:38.523 に答える