2

リバースプロキシの背後にデプロイされているWebSpherePortalへのアクセスに問題があります(Apacheを使用)。問題は、ブラウザーによって発行されたHTTP要求を検査しているときに、一部の要求はプロキシーを対象とし、一部はWebSpherePortalを直接対象としていることです。

私のApache構成:

ProxyPassReverseCookieDomain backend-server proxy-server

ProxyPass / http://backend-server:10039/
ProxyPassReverse / http://backend-server:10039/

問題は、生成された一部のリソースに、バックエンドサーバー:10039をターゲットとする絶対URIが含まれていることです。

リバースプロキシの背後でWebSpherePortalに適切にアクセスするには、他に何を構成する必要がありますか?

4

2 に答える 2

4

私は自分の質問に答えることができるので、問題は次のとおりです。

サーバー側では、WebSpherePortalのポートレットとJSPはとを使用request.getServerHost()request.getServerPort()ます。これらのメソッドをリバースプロキシ(Host:ヘッダーを送信する)の背後で機能させるため。追加する必要がありました:

ProxyPreserveHost On

アパッチ構成と:

com.ibm.ws.webcontainer.extractHostHeaderPort = true
trusthostheaderport = true

IBMコンソールのWebコンテナーへの追加のプロパティー:WebSphere application servers -> WebSphere_Portal -> Web Container Settings -> Web Container -> Custom properties

これらのプロパティについては、ここで説明します。

于 2012-05-17T11:48:32.727 に答える
0

数日前に同じ問題が発生し、最終的にapache mod_substituteを選択して、これらのURLを次のように変更しました。
Substitute "s|http ://backend-server:10039/|/|i"

于 2015-01-15T09:01:00.583 に答える