现在使用 ip
访问前端页面发起的请求代理转发到 http://localhost:3000
时访问不到后端接口服务,是方法错了吗?还有什么更好得方案?
希望同时在linux服务器上运行前端项目(80端口)和Node接口服务(3000端口)。
并且使用公网 ip 访问前端项目时接口能够正常访问。
接口部分
Linux 上本地运行 node app.js
运行接口服务到 3000
端口
前端部分
编译后的前端项目部署在 80
端口,并且代理转发 /prod-api
的请求到启动的接口服务上
Nginx配置:
前端开发环境代理配置:
'/api':{
// 目标地址
target: 'http://localhost:3000/prod-api'
changeOrigin:true,
// 将路径中的 '/api' 替换成 ''
pathRewrite: {
'^/api': ''
}
}
前端配置写错了
target: 'http://localhost:3000/prod-api'
这里的target地址应该是应该用你nginx配置的域名,即改成这样
target: 'http://xxx.xxxx.29.150/prod-api'