通过 Passenger 解决此问题

问题描述 投票:0回答:2

http://nodejs-resume.example.me/

当网站加载时,

/usr/local/dh/passenger/helper-scripts/node-loader.js:37
GLOBAL.PhusionPassenger = exports.PhusionPassenger = new EventEmitter();
^

ReferenceError: GLOBAL is not defined
    at Object.<anonymous> (/usr/local/dh/passenger/helper-scripts/node-loader.js:37:1)
    at Module._compile (node:internal/modules/cjs/loader:1108:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1137:10)
    at Module.load (node:internal/modules/cjs/loader:973:32)
    at Function.Module._load (node:internal/modules/cjs/loader:813:14)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:76:12)
    at node:internal/main/run_main_module:17:47

我已修改我的

.htaccess
以使用节点 15.5.0 我使用 DreamHost VPS 托管

passenger passenger-apache
2个回答
5
投票

我相信这个错误是因为

GLOBAL
的大写
global
别名从 Nodejs v14(或附近的某个版本)开始已被弃用。正如此处所警告:

在 DreamHost 服务器上运行的 Passenger 版本当前无法与 Node.js 版本 14+ 一起运行。

您需要使用比 v14 的节点版本才能让乘客工作。我将节点降级到 v13,这解决了我的问题。


0
投票

请将上述文件中的对象名称GLOBAL更改为global。然后重新启动 Web 服务器(例如 nginx、appache)。就我而言,这解决了我的问题。

© www.soinside.com 2019 - 2024. All rights reserved.