配置nginx通过域名访问后端接口
目录
配置nginx通过域名访问后端接口
通过域名来访问后台服务:
1、单个服务
如果你的controller里面是这样写的
@RestController
@CrossOrigin({"*"})
@RequestMapping({"/train"})
public class TrainController {
//
}
那么需要在nginx里面这样配置(假设你的服务在本机8888端口上跑着):
server {
listen 80;
server_name lab001.com;
location / {
proxy_set_header Host $host;
proxy_pass http://127.0.0.1:8888;
}
}
lab001.com可以在host文件里面配置,:127.0.0.01 lab001.com 然后你可以这样访问了:http://lab001.com/train (替代了原来的http://127.0.0.1:8888/train)
2、多个服务
假设有多个后端服务:一个在8888端口,一个在8887端口; 那么就需要在nginx中配置多个服务;
server {
listen 80;
server_name lab001.com;
location /project1 {
proxy_set_header Host $host;
proxy_pass http://127.0.0.1:8887/;
}
location /project2 {
proxy_set_header Host $host;
proxy_pass http://127.0.0.1:8888/;
}
}
切记需要在:
后加 /
如果没有 / ,会报错,如下图
为啥需要这个 / ,我还没搞清楚,欢迎评论 ,抱拳了