最近给一个比较早的系统做了个纯图表的数据统计系统,部署时用nginx做了反向代理碰到点问题,现做一记录。
由于后端没有项目名,且所有请求接口都以http://192.30.1.219:8099/开始,所以前端项目文件不能直接放在nginx的html中,所以在nginx.conf的配置中,需要将location匹配的url为/的请求代理到对应后台部署的端口下,前端需要在nginx的html中建一个前端项目包如visWeb,这样为了和代理到后台的location进行区别。
部分配置代码:
server {
#前端端口
listen 3005;
server_name 192.30.1.219;
#charset koi8-r;
#access_log logs/host.access.log main;
location /visWeb {
root html;
index index.html index.htm;
}
location ^~ / {
proxy_pass http://192.30.1.219:8099/;
#proxy_pass指令用于设置被代理服务器的地址。可以是主机名称、IP地址加端口号的形式。语法结构如下:
#proxy_pass URL;
#URL 为被代理服务器的地址,可以包含传输协议、主机名称或IP地址加端口号,URI等
proxy_set_header Host 192.30.1.219;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
网友评论