2

現在、同じApacheサーバーで2つのWebアプリケーションをホストしています。それらをAとBと呼びましょう。私はJSONPを使用してAからBへのクロスドメインajax呼び出しを行っていました(Bからのデータが必要でした)。このメソッドでは、リクエストが大きくなりすぎてGETが機能しなくなったときに問題が明らかになりました。POSTリクエストを使用する必要がありました。

ここに示すように、mod_proxyをインストールし、ApacheWebサーバーをリバースプロキシとして機能するように構成しました:http://bit.ly/rpeWJI。これはGETリクエストでうまく機能しましたが、それでもPOSTリクエストを正しく機能させることができません。誰かが私を助けることができますか?

ちなみに、私はWebアプリケーションにPylonsWebフレームワークを使用しています。

4

2 に答える 2

1

Apacheでmod_securityを有効にしていますか?

HTTP POSTリクエストがリバースプロキシに対して失敗した理由をデバッグしているときに、あなたの投稿に出くわしました。(彼らは403応答を受信して​​いました)。

サーバーがOWASP設定でmod_securityを使用していたことが判明しました。エラーログを監視し、application/json承認されたタイプのリストに追加することで解決しました。

PUT同様の理由でリクエストも許可しなければなりませんでした。

于 2015-03-09T16:40:11.710 に答える
-2

Apacheの代わりにnginxを使用することをお勧めします。設定例は次のとおりです

http {
    proxy_cache_path  /data/nginx/cache  levels=1:2    keys_zone=STATIC:10m
                                        inactive=24h  max_size=1g;
    server {
        location / {
            proxy_pass             http://1.2.3.4;
            proxy_set_header       Host $host;
            proxy_cache            STATIC;
            proxy_cache_valid      200  1d;
            proxy_cache_use_stale  error timeout invalid_header updating
                                  http_500 http_502 http_503 http_504;
        }
    }
}
于 2011-07-06T05:57:00.400 に答える