我有nginx代理到app服务器,具有以下配置:
location /app/ {
# send to app server without the /app qualifier
rewrite /app/(.*)$ /$1 break;
proxy_set_header Host $http_host;
proxy_pass http://localhost:9001;
proxy_redirect http://localhost:9001 http://localhost:9000;
}
对/ app的任何请求都转到:9001,而默认站点托管在:9000。
GET请求正常工作。但每当我向/ app / any / post / url提交POST请求时,都会导致404错误。通过GET / app / any / post / url直接在浏览器中访问网址会按预期点击应用服务器。
我在网上找到了其他有类似问题的人并添加了
proxy_set_header主机$ http_host; 但这还没有解决我的问题。
任何见解都表示赞赏。
感谢。
答案 0 :(得分:1)
我的不好,问题不在于nginx,而是我的app服务器。我正在使用一个路由模块,要求我明确指定请求方法,如果不是get,那么这就是为什么它在帖子上抛出404错误,而不是在直接点击浏览器URL时。