nginx反向代理替换url
时间: 2023-10-06 19:04:17 浏览: 73
在nginx中,可以使用proxy_pass指令来实现反向代理替换URL。proxy_pass指令将匹配的请求转发到指定的URL上。
例如,下面是一个nginx配置文件的示例:
```
server {
listen 80;
server_name localhost;
location /system {
proxy_pass http://127.0.0.1:8080;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
```
在上述配置中,所有以/system开头的请求将被转发到http://127.0.0.1:8080上。原始请求的URL将被保持不变。
如果你想对目标URL做一些额外的处理,可以在proxy_pass指令中加入一些参数。例如,如果你想在目标地址后增加/,可以这样配置:
```
location /system {
proxy_pass http://127.0.0.1:8080/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
```
这样配置后,匹配到的请求的路径将会从location匹配成功的部分剪切掉,并拼接到proxy_pass指定的目标地址之后。