nginx可以请求站外地址么?

【字号: 日期:2022-07-07浏览:31作者:雯心

问题描述

我是 nginx 新手,试了多次 proxy_pass 的跳转都无法跳转到站外。nginx 可以请求站外链接么?

目前有一个外部的API接口地址:http://122.23.21.212/api/v2?args=others&argc=4

现在我想实现这样的功能:

当我访问 http://localhost/myapi?args=others&args=4 的时候,其实 nginx 在内部是去访问 http://122.23.21.212/api/v2?args=others&argc=4 这个接口,请问这个需要怎么样进行配置呢?

shellserver { ... location /myapi {proxy_pass http://122.23.21.212/api/v2?$request_uri; } ...}

各位帮忙看看,谢谢

问题解答

回答1:

server {... location /myapi {if ( $query_string ~ '(args=others&args=4)$') { rewrite ^/ http://122.23.21.212/api/v2;} } ... }

[fifilyu@archlinux ~]$ curl -I ’http://localhost/myapi?args=others&args=4’ HTTP/1.1 302 Moved Temporarily Server: nginx/1.8.0 Date: Wed, 06 May 2015 01:04:15 GMT Content-Type: text/html Content-Length: 160 Connection: keep-alive Location: http://122.23.21.212/api/v2?args=others&args=

相关文章: