nginx代理配置,搞定proxy_pass配置

nginx代理配置

容易晕的proxy_pass 后面 url带不带"/"的问题

(1)配置 proxy_pass 时,当在后面的 url 加上了 /,相当于是绝对路径,则 Nginx 不会把 location 中匹配的路径部分加入代理 uri,即url直接替换为代理的地址。

(2)如果配置 proxy_pass 时,后面没有 /,Nginx 则会把匹配的路径部分加入代理 uri,即匹配的路径部分替换后代理的地址后,再加上请求的地址。

代理配置举例

下面几种情况的代理配置

1.请求地址:http://127.0.0.1/test -> http://xiaofei.site/dir/test

复制代码
#代理配置
location /test {
   proxy_pass http://xiaofei.site/dir ;
}

2.请求地址:http://127.0.0.1/test/ -> http://xiaofei.site/dir

复制代码
location /test {
    proxy_pass http://xiaofei.site/dir/ ;
}

3.请求地址:http://127.0.0.1/test/ -> http://127.0.0.1/dir/test/

复制代码
location /test/ {
   proxy_pass http://xiaofei.site/dir;
}

4.请求地址:http://127.0.0.1/test/ -> http://xiaofei.site/dir/

复制代码
location /test/ {
    proxy_pass http://xiaofei.site/dir/ ;
}

常用代理配置

前端页面代理
conf 复制代码
location /page {
            alias E:/softinstall/projects/page/;
            index index.html;
            charset utf-8;
            add_header Cache-Control no-cache;
            add_header Pragma no-cache;
            add_header Expires 0;
        }
前端请求代理
复制代码
location /xxx/ {
			proxy_pass http://127.0.0.1:9000/;
			proxy_http_version 1.1;
			proxy_set_header Upgrade $http_upgrade;
			proxy_set_header Connection "upgrade"; 
			proxy_set_header Host $host:$server_port; 
			proxy_set_header X-Real-IP  $remote_addr;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			proxy_set_header Cookie $http_cookie;
			proxy_connect_timeout 600s;
			proxy_send_timeout 600s;
			proxy_read_timeout 600s;
			client_max_body_size 1024m;
		}
后端请求代理
复制代码
location /xxx/ {
			proxy_pass http://localhost:8000/xxx/;
			proxy_http_version 1.1;
			proxy_set_header Upgrade $http_upgrade;
			proxy_set_header Connection "upgrade"; 
			proxy_set_header Host $host:$server_port; 
			proxy_set_header X-Real-IP  $remote_addr;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			proxy_connect_timeout 600s;
			proxy_send_timeout 600s;
			proxy_read_timeout 600s;
			client_max_body_size 1024m;
		}
相关推荐
羑悻的小杀马特3 分钟前
超越Bridge:全面掌握Docker网络隔离与通信的底层逻辑!
运维·网络·docker·容器
A-刘晨阳12 分钟前
Windows硬盘里的媒体太乱?我用WSL+Plex把本地文件整理成一个统一媒体中心
运维·cpolar
古法老登瞎折腾28 分钟前
大数据智能运维实战(六):任务一直在等——排查调度队列与执行资源
java·大数据·运维·spring ai·mcp
wtblszn1 小时前
实验室通风设备远程监控运维管理系统方案
运维
众壹新能源科技20 小时前
逆变器自带无功不够用,加装5MVar SVG后功率因数从0.85回到0.99
运维·人工智能·自动化
..Dauntless..20 小时前
【Linux】一切皆文件和缓冲区
linux·运维·服务器
QMCY_jason20 小时前
x86 ubuntu2204 无gui 安装 openeuler 2203 aarch64版本
linux·运维·服务器
重生之小比特21 小时前
【Linux系统】12 进程程序替换 自定义Shell 命令行解释器
linux·运维·服务器
考拉讲支付21 小时前
母婴亲子服务平台分账架构设计:多场景多方分账与合规清结算实践
大数据·运维·人工智能·微信小程序·架构·微信公众平台
LateFrames21 小时前
“场控软件” 如何容错与运维
运维·容错·led大屏·播控系统·场控软件