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

CloudLinux OS Node.js Selector运行ES6模块启动失败求助

解决Namecheap Node.js Selector加载ESM模块(Nuxt3)的启动错误

问题核心

Namecheap服务器的Node.js Selector通过lsnode.js(CommonJS模块)加载启动文件,而你的Nuxt3项目(以及示例中的app.mjs)是ES模块(ESM),直接用require加载ESM会触发ERR_REQUIRE_ESM错误。

解决方案

方法1:创建CommonJS中间启动脚本

写一个CJS格式的启动文件,通过动态import()加载ESM入口文件,绕过require的限制:

// start.js (CommonJS格式)
async function bootApp() {
  // 替换为你的Nuxt3实际入口路径,通常是 .output/server/index.mjs
  await import('./app.mjs');
}

bootApp().catch(error => {
  console.error('应用启动失败:', error);
  process.exit(1);
});

在Namecheap的Node.js Selector中,将启动文件设置为这个start.js即可。

方法2:确认项目package.json配置

确保项目根目录的package.json中包含ESM标识:

{
  "type": "module"
}

Nuxt3项目默认已配置,但如果缺失可以添加,辅助Node.js正确识别模块类型。

方法3:选择兼容的Node.js版本

在Namecheap的Node.js Selector中选择Node.js 16.x及以上版本,确保对ESM的完整支持。


你的示例启动文件

import http from 'http';
var server = http.createServer(function(req, res) {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    var message = 'It works!\n',
        version = 'NodeJS ' + process.versions.node + '\n',
        response = [message, version].join('\n');
    res.end(response);
});
server.listen();

报错信息

internal/modules/cjs/loader.js:948
    throw new ERR_REQUIRE_ESM(filename);
    ^

Error [ERR_REQUIRE_ESM]: Must use import to load ES Module: /home/wiebdmbt/jawedding/app.mjs
    at new NodeError (internal/errors.js:322:7)
    at Module.load (internal/modules/cjs/loader.js:948:11)
    at Function.Module._load (internal/modules/cjs/loader.js:790:12)
    at Module.require (internal/modules/cjs/loader.js:974:19)
    at require (internal/modules/cjs/helpers.js:93:18)
    at startApplication (/usr/local/lsws/fcgi-bin/lsnode.js:48:15)
    at Object.<anonymous> (/usr/local/lsws/fcgi-bin/lsnode.js:16:1)
    at Module._compile (internal/modules/cjs/loader.js:1085:14)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
    at Module.load (internal/modules/cjs/loader.js:950:32) {
  code: 'ERR_REQUIRE_ESM'
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 07:16:30