该指令用来设置被代理服务器的地址,可以是主机名称、IP地址加端口号的形式。
proxy_pass URL
其中,URL为要设置的被代理服务器的地址,包括传输协议、主机名称或IP地址加端口号、URI等要素
如果被代理服务器是一组服务器的话,可以使用upstream指令配置后端服务器组。例如:
upstream proxy_svrs{
server http://192.168.1.1:8081/uri/; 这里如果指定的协议,那么在server块中的proxy_pass指令就不需要指明协议。反之。
server http://192.168.1.2:8081/uri/;
server http://192.168.1.3:8081/uri/
}
server{
listen 80;
server_name www.myweb.name; 客户端请求域名
location / {
proxy_pass proxy_svrs 转发,反向代理服务器路径
}
}
如果不想改变原地址中的uri,那么就不要在proxy_pass中的URL变量中配置uri.
注意点:
server{
listen 80;
server_name www.myweb.name;
location /server/ {
#配置一 proxy_pass http://192.168.1.0
#配置二 proxy_pass http://192.168.1.0/
}
}
上述两种配置的效果是不一样的。
比如一个客户端请求,http://www.myweb.name/server/index.html...
使用配置一,转发的路径是http://192.168.1.0/server/index.html...
使用配置二,配置二结果多了个斜杠,转发的路径是http://192.168.1.0/index.hlml,,,原地址的uri会被替换为斜杠。