阿里云上以前用的docker部署的一个项目,现在又部署了一个node项目,怎么区分开

新node项目很简单,就只有
app.post("/upload",router.doPost);
app.get("/getat",router.doGetAT);

其实就是想暴露出这两个接口。

我现在阿里云的公网ip是http://112.74.191.12,以前部署过一个项目,现在通过“http://112.74.191.12/getat”访问到的还是以前的项目(404),我在本地的测试是好的:

clipboard.png
现在就是希望新项目通过部署到阿里云后能通过这个接口返回得到数据,pm2启动是正常的:

clipboard.png
现在该怎么做?谢谢赐教了。。

好像应该使用nginx?不太懂,应该怎么配置?

阅读 2.9k
1 个回答
  • 旧项目已经使用了80端口 而新的node项目启用的端口是3000,访问的方式该是 http://ip:3000/getat
  • 如果希望 http://112.74.191.12/getat 这样的形式去访问 可使用nginx 根据location进行代理转发
  1. 旧的项目放弃80端口,将nginx作为80端口,因为80端口只能有一个。
  2. 旧的项目启用新的端口,通过nginx端口配置,访问nginx时会转发到旧项目上
  3. 新的node项目 再根据location进行代理转发

location配置:
location /getat {

    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_pass http://127.0.0.1:3000;

}

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题