繁体   English   中英

如何将HTTP状态传递给NGINX反向代理中的下一台服务器

[英]How to pass HTTP status to next server in NGINX reverse proxy

我需要通过NGINX反向代理获得303状态代码,它在Apache中有效。 但是NGINX会将其转换为200状态。 303重定向不会发生。

我在WP Engine环境中尝试了以下代码示例

location ~ ^/?(.*){
                proxy_pass https://applicationserver.com/$1;                    
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Real-HOST $host;                 
                proxy_set_header X-Forwarded-Server $host;
                proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
                proxy_buffering off;
                proxy_cookie_path / /;
                proxy_cookie_domain applicationserver.com nginxserver.com;  
                proxy_pass_header  location;
                proxy_pass_header  server;
                proxy_pass_header  Set-Cookie;
                proxy_pass_header  P3P;
                proxy_pass_request_headers on;
                proxy_pass_request_body on;
                add_header cache-control "no-cache,no-store";   
}

假设https://applicationserver.com/303.php给出了303状态https://nginxserver.com/303.php应该以真实状态呈现https://applicationserver.com/303.php文件。 安装它给了我200状态。

303应该将我重定向到标题中提到的其他页面。 设置为200状态会破坏我的应用程序,因为它不会重定向。

注意:我无权访问应用程序代码。 我必须通过NGINX修复它

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM