我目前在同一个Apache服务器上托管2个Web应用程序。让我们打电话,他们是A和B.我正在使用JSONP进行从A到B的跨域ajax调用(我需要B中的一些数据)。当我的请求变得太大而GET根本不起作用时,这个方法就会出现问题。我需要使用POST请求。
我安装了mod_proxy并将我的Apache Web服务器配置为反向代理,如下所示:http://bit.ly/rpeWJI。这与GET请求完美配合,但我仍然无法让POST请求正常工作。有人能帮我吗?
作为旁注,我正在使用Pylons Web框架来处理我的Web应用程序。
答案 0 :(得分:1)
您是否在Apache中启用了mod_security?
我在调试为什么HTTP POST请求对我的反向代理失败时遇到了你的帖子。 (他们收到403回复)。
它使我们的服务器使用带有OWASP设置的mod_security。监控错误日志,然后将application/json
添加到已批准类型列表中解决了它。
出于类似原因,我还必须允许PUT
次请求。
答案 1 :(得分:0)
我建议使用nginx而不是Apache。 Here是一个示例配置:
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;
}
}
}