You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

云VPS部署AdonisJS后无法通过外部远程连接访问API如何解决

AdonisJS 允许远程访问配置方法

方法1:直接对外暴露服务端口

  • 第一步:修改AdonisJS监听配置
    打开项目根目录下的.env文件,找到HOST配置项,将值修改为0.0.0.0:
HOST=0.0.0.0
PORT=3333

127.0.0.1是本地回环地址,只有服务器本机可以访问,修改为0.0.0.0后才会监听服务器所有网卡的请求,允许外部设备连接。

  • 第二步:放行VPS的3333端口
    首先放行系统防火墙端口,不同系统对应命令如下:
    • ufw防火墙(Debian/Ubuntu默认):ufw allow 3333/tcp
    • firewalld防火墙(CentOS/RHEL默认):firewall-cmd --add-port=3333/tcp --permanent && firewall-cmd --reload
      其次要登录你所用云服务商的控制台,在安全组配置中添加入站规则,放行3333端口的TCP请求,大部分云厂商默认会拦截非常用端口的外部请求。

配置完成后重启AdonisJS服务,就可以通过http://你的VPSIP:3333或者绑定的域名访问服务了。

方法2:反向代理方案(生产环境更推荐)

你目前使用的Apache反向代理方案是更适合生产环境的选择,不需要对外暴露额外端口,还可以方便配置静态资源处理、HTTPS证书等能力,补充几个优化点:

  • 开发阶段不要用反向代理,直接用方法1配置即可,开发模式的热重载功能不受影响
  • 生产环境不要使用node ace serve --watch启动服务,该命令是开发专用,带有文件监听逻辑,性能低且稳定性差。生产环境部署流程如下:
    1. 执行编译命令:node ace build --production
    2. 进入编译后的build目录:cd build
    3. 安装生产依赖:npm ci --production
    4. 配合pm2启动服务做进程守护:pm2 start server.js --name adonis-api
  • 可以在Apache配置中添加静态资源规则,AdonisJS的静态资源默认存放在public目录,直接由Apache处理可以降低Node服务的压力。

内容的提问来源于stack exchange,提问作者learningtech

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 01:39:02