nginx 网站接口代理,个别接口代理到另外服务器
location /api/ {
#网站接口禁止爬虫
if ($http_user_agent ~* "qihoobot|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetcher-Google|Yahoo! Slurp|Yahoo! Slurp China|YoudaoBot|Sosospider|Sogou spider|Sogou web spider|MSNBot|ia_archiver|Tomato Bot") {
return 403;
}
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_buffering off;
proxy_pass http://XXX.XXX.XXX.XXX:XX;
access_log /data/logs/XXXXX/XXXX/XXXXX.log access;
}
以上之前的配置,现在的需求是,接口/api/aa/aaa/ 和/api/bb/bbb 代理到 http://YYY.YYY.YYY.YYY:YY 这个机器
需要怎么写?请教以下的写法能否满足需求
location /api/ {
#网站接口禁止爬虫
if ($http_user_agent ~* "qihoobot|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetcher-Google|Yahoo! Slurp|Yahoo! Slurp China|YoudaoBot|Sosospider|Sogou spider|Sogou web spider|MSNBot|ia_archiver|Tomato Bot") {
return 403;
}
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_buffering off;
proxy_pass http://XXX.XXX.XXX.XXX:XX;
access_log /data/logs/XXXXX/XXXX/XXXXX.log access;
if ($request_uri ~ /.*/(aa/aaa)|(bb/bbb)$) {
proxy_pass http://YYY.YYY.YYY.YYY:YY;
access_log /data/logs/YYYYY/YYYYY/YYYYY.log access;
}
}