Nginx通过二级目录映射不同的反向代理
程序员文章站
2022-06-11 16:14:02
...
今天前后端分离项目,部署时需要通过二级目录来区分前端和后端,参考了网上文章。
前端是静态页面,当客户访问http://localhost/ ,当访问路径是 / \color{red}{/} / 时,访问的是前端页面。
后端服务接口,url 是 http://localhost/api/,当访问路径是 / a p i / \color{red}{/api/} /api/ 时,访问的是后端的服务接口
listen: 监听端口
server_name :是通配符,输入自己的域名IP
root / :静态文件所在的路径
proxy_pass:此伪指令设置侦听代理服务器的端口或套接字,以及将在其上反映位置的URI。端口可以以主机名或地址和端口名的形式表示。
proxy_redirect:如果需要修改从被代理服务器传来的应答头中的"Location"和"Refresh"字段,可以用这个指令设置
proxy_set_header:该指令允许重新定义并添加一些请求标头行,这些请求标头行将被传输到代理服务器。 作为值,可以使用文本,变量及其组合。 如果未在此级别描述其指令,则此指令从上一级继承。
nginx配置
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root D:/police/terminal-client;
index index.html index.htm;
}
location /api/ {
proxy_pass http://localhost:8888/;
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 /api2/ {
proxy_pass http://localhost:8890/;
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;
}
}
参考资料:
https://blog.csdn.net/luweibin19/article/details/106764454