服务器 
首页 > 服务器 > 浏览文章

nginx 反向代理之 proxy_pass的实现

(编辑:jimmy 日期: 2024/12/23 浏览:3 次 )

格式很简单: proxy_pass URL;

其中URL包含:传输协议(http://, https://等)、主机名(域名或者IP:PORT)、uri。

示例如下:

proxy_pass http://www.xxx.com/;
proxy_pass http://192.168.200.101:8080/uri;
proxy_pass unix:/tmp/www.sock;

对于proxy_pass的配置有几种情况需要注意:

假设server_name为www.xxx.com

当请求http://www.xxx.com/aming/a.html的时候,以上示例分别访问的结果是

示例1:

location /aming/
{
  proxy_pass http://192.168.1.10;
  ...
}

结果1:http://192.168.1.10/aming/a.html

示例2:

location /aming/
{
  proxy_pass http://192.168.1.10/;
  ...
}

结果2:http://192.168.1.10/a.html

示例3:

location /aming/
{
  proxy_pass http://192.168.1.10/linux/;
  ...
}

结果3:http://192.168.1.10/linux/a.html

示例4:

location /aming/
{
  proxy_pass http://192.168.1.10/linux;
  ...
}

结果4:http://192.168.1.10/linuxa.html

总结:

为了方便记忆和规范配置,建议所有的 proxy_pass 后的url都以“/”结尾。

proxy_pass http://192.168.1.10/linux/;
上一篇:详解使用阿里云镜像仓库构建国外Docker镜像
下一篇:Nginx设置日志打印post请求参数的方法