Heim > Fragen und Antworten > Hauptteil
Ich bin neu bei Nginx. Ich habe Proxy_pass viele Male ausprobiert, kann aber nicht aus der Site springen. Kann Nginx externe Links anfordern?
Derzeit gibt es eine externe API-Schnittstellenadresse: http://122.23.21.212/api/v2?args=others&argc=4
Jetzt möchte ich eine Funktion wie diese implementieren:
Wenn ich auf http://localhost/myapi?args=others&args=4 zugreife, greift Nginx tatsächlich intern auf die Schnittstelle http://122.23.21.212/api/v2?args=others&argc=4 zu ?
shell
server { ... location /myapi { proxy_pass http://122.23.21.212/api/v2?$request_uri; } ... }
Bitte helfen Sie mir, danke
怪我咯2017-05-16 17:26:30
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=