使用nginx proxy_pass修改位置标题

使用nginx proxy_pass修改位置标题,第1张

概述使用nginx proxy_pass修改位置标题

我有一个Nginx proxy_pass安装程序将/API上的每个请求传递给后端Tomcat REST服务。 这个服务在某些情况下会返回一个根据请求types而不同的Location标题,例如: Location: http://foo.bar/baz/API/search/1234567 – baz部分是由于它被托pipe在Tomcat 。

我当前的configuration正确地重写了foo.bar主机名,但保持baz部分完好无损。 我想删除这个,但proxy_pass选项似乎被限制为清除或设置一个新的头值。

有没有办法dynamic修改标题之前传递给客户端,使用正则Expression式替代品,例如? 这是我的Nginxconfiguration:

location /API { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_max_temp_file_size 0; clIEnt_max_body_size 10m; clIEnt_body_buffer_size 128k; proxy_connect_timeout 90; proxy_send_timeout 90; proxy_read_timeout 90; proxy_buffers 32 4k; proxy_redirect off; proxy_pass http://foo.bar:8080/baz/API; }

如何添加标题只有特定的文件与Nginx

在Apache Htaccess中正确使用KeepAlive

GCC在编译时在/ usr / local / include中查找头文件,但在链接时不在/ usr / local / lib中查找库文件。 为什么?

包含windows上可能存在或不存在的标头

Nginx – 我将如何为所有虚拟主机设置过期标题?

摄像头,vIDeo源对话框出现

C ++:平台相关types – 最佳模式

Nginx大标题响应

将Perl脚本输出pipe道打印为10行后,将会杀死脚本

在QT GUI应用程序中切换窗口

您可以使用regexp来修改它,但更好的方法是使用代理重定向:

proxy_redirect http://foo.bar/baz/ /;

http://Nginx.org/en/docs/http/ngx_http_proxy_module.HTML#proxy_redirect

foo.bar/baz/任何位置标题foo.bar/baz/将转到/

如果你只是想重定向/baz/API ,那也可以。

如果任何重定向也添加端口,您还需要添加http://foo.bar:8080/baz/ (单独重定向)。

希望这可以帮助!

总结

以上是内存溢出为你收集整理的使用nginx proxy_pass修改位置标题全部内容,希望文章能够帮你解决使用nginx proxy_pass修改位置标题所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/1264655.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-08
下一篇2022-06-08

发表评论

登录后才能评论

评论列表(0条)

    保存