环境:
在同一台linux服务器上部署了两个node服务,一个服务监听4000端口,负责渲染ejs模板,一个服务监听8080端口,负责提供api
nginx配置:
location / {
proxy_pass http://58.87.67.xx:4000; #node server
}
location api/ {
rewrite ^.+api/?(.*)$ /$1 break;
proxy_pass http://58.87.67.xx:8080; #node api server
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证书
需求:
在前端发起以api开头的请求(如/api/index),nginx rewrite请求地址转发至8080端口服务,然后node来负责请求处理,重写之后的地址则没有/api(如/index)
现遇到的问题是请求的接口全部404,不知道是不是匹配规则写的是否有问题,也查了很多文档,但是都没有解决问题,还请各位大佬帮忙看一下,多谢!