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

Nuxt+Express电商应用部署到Digital Ocean的base URL配置问题

问题根源

你配置的https://0.0.0.0:8080/是错误地址:0.0.0.0是服务端用来绑定监听所有网卡的地址,仅服务端内部有效,不能作为客户端发起API请求的目标地址。

正确配置方法

1. 直接替换为服务器公网地址

先获取你的Digital Ocean Droplet的公网IP(或者你绑定的站点域名),直接修改baseDomain:

  • 未配置SSL证书时使用HTTP协议:
const baseDomain = 'http://<你的Droplet公网IP>:8080/'
// 如果你绑定了域名则改成:const baseDomain = 'http://<你的域名>:8080/'
  • 已配置SSL证书时使用HTTPS协议(如果用默认443端口可省略端口号):
const baseDomain = 'https://<你的域名>/'

2. 环境变量自动适配(推荐)

避免本地开发和生产部署手动切换地址,通过环境变量自动判断运行环境修改配置:
首先在nuxt.config.js中补充axios配置:

// nuxt.config.js
export default {
  // 其余原有配置保留
  modules: ['@nuxtjs/axios'],
  axios: {
    baseURL: process.env.NODE_ENV === 'production' 
      ? 'https://<你的生产环境地址>/'  // 替换为你的生产地址
      : 'http://localhost:8080/'
  }
}

之后请求时直接使用this.$axios发起请求即可,不需要手动拼接baseURL。

必查配置项

  • 确认Digital Ocean Droplet的防火墙已开放8080端口的入站规则,否则外部请求会被拦截
  • 若未配置SSL证书不要使用HTTPS协议,否则会报连接错误
  • 生产环境建议修改Express的CORS配置为指定允许的前端域名,避免跨域安全问题:
// 服务端index.js中替换原有app.use(cors())
app.use(cors({
  origin: '<你的前端访问地址>'
}))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 08:18:00