mod_proxyとwildfly(apache 224とwildfly 9)のApacheロードバランサがあります。mod_proxyを使用したWebサービスのためのapache httpdとwildflyのロードバランサ
私はwildflyのドメインに4つのサーバーを持っており、ロードバランサは "hello world"アプリケーションでうまく動作し、バランサマネージャではどのようにリクエストが各サーバーに送信されるかを確認できます。
問題は、いくつかのREST Webサービスを持つアプリケーションを使用すると、GETメソッドといくつかのヘッダを認証用に送信していて、何とかアプリケーションがエラーに応答しています。ロードバランサですが、サーバーに直接送信すると正しく動作します。
<VirtualHost *:80>
ProxyRequests Off
<Proxy balancer://mycluster>
BalancerMember http://localhost:8080/ loadfactor=25
BalancerMember http://localhost:8230/ loadfactor=25
BalancerMember http://localhost:8330/ loadfactor=25
BalancerMember http://localhost:8430/ loadfactor=25
</Proxy>
<Location /balancer-manager>
SetHandler balancer-manager
Order Deny,Allow
Allow from all
</Location>
<Location /test>
Order allow,deny
Allow from all
</Location>
ProxyPass /test balancer://mycluster stickysession=JSESSIONID
を次のように私のcofigurationが行く
私は郵便配達を使用してテストし、getメソッドおよび認証用のヘッダーとリクエストを送信しています:基本的な{base64でコード}次のように:
http://127.0.0.1/test/myproject.ws/myproject/get_list?key=T11108101191&page=1
これはエラーになります。これはOK
を行く
http://127.0.0.1:8080/myproject.ws/myproject/get_list?key=T11108101191&page=1
と私は上記を試してみたが、POSTメソッドで、それはロードバランサと同じエラーを取得するとき:
は、私はこれをしようとします。私は間違っていると思いますか?
PS:プロジェクトのWEB-INF/web.xmlを入れてみましたが、同じエラーが表示されます。
わからない場合は、 'はProxyPass/test'を使用している場合は、'使用BalancerMember次のとおりです。http:
新しい設定が行く// localhostを: 8080' –
ありがとう!それが問題でした。私は良いことをすべて見たので、これについてナッツを得ていたし、ログには何の誤りもなかった。 – user3123488