Tomcat有一个东西叫做ContextPath,就是一个标识唯一应用的前缀。我们可以用这个来区分后端的接口请求。
现在后端大部分都使用SpringBoot了,配置起来也很简单,server.servlet.context-path=/api
,可能有些旧版本是server.context-path=/api
,具体从什么时候开始变的我也不清楚,试一下就晓得了。
后端配置好了之后,我们前端的Vue项目就可以打包成静态文件,然后使用nginx作为Web服务器,通过nginx的代理功能,将所有/api
请求,全部转发到后端服务器上。
一般Vue会有统一的baseUrl,我们只需要在打包的时候,统一替换一下就可以了。
最后贴一下nignx的配置。
upstream api {
server 192.168.100.2:8080;
}
server {
location ^~ /api/ {
proxy_pass http://api;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forward-For $proxy_add_x_forward_for;
proxy_set_header X-Forward-Proto $scheme;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
}