有时我们希望nginx
的 /
既能映射前端页面,又能同时映射后端项目
- 假设前端项目名为
page
, 在nginx
中的路径为html/work/page
- 后端
java
项目发布在tomcat
,端口为8080
nginx
配置代码为
location @routerback {
proxy_set_header host $host;
proxy_set_header X-forwarded-for $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://127.0.0.1:8080/$request_uri;
}
location / {
root html/work/page/;
try_files $uri $uri/ @routerback;
}
/
拦截所有请求,首先定位到前端页面,如果前端页面不存在,则跳转至@routerback
路由@routerback
路由反向代理至tomcat