Node.js 生产服务器上的ELF标头无效

Node.js 生产服务器上的ELF标头无效,node.js,plesk,Node.js,Plesk,有人知道为什么这个错误只发生在生产服务器上,而不是我在本地运行它时 internal/modules/cjs/loader.js:815 return process.dlopen(module, path.toNamespacedPath(filename)); ^ Error: /var/www/vhosts/user9568/**SITE_NAME**/node_modules/bcrypt/lib/binding/n

有人知道为什么这个错误只发生在生产服务器上,而不是我在本地运行它时

internal/modules/cjs/loader.js:815
      return process.dlopen(module, path.toNamespacedPath(filename));
                     ^
    
    Error: /var/www/vhosts/user9568/**SITE_NAME**/node_modules/bcrypt/lib/binding/napi-v3/bcrypt_lib.node: invalid ELF header
        at Object.Module._extensions..node (internal/modules/cjs/loader.js:815:18)
        at Module.load (internal/modules/cjs/loader.js:641:32)
        at Function.Module._load (internal/modules/cjs/loader.js:556:12)
        at Module.require (internal/modules/cjs/loader.js:681:19)
        at Module.require (/usr/share/passenger/helper-scripts/node-loader.js:80:25)
        at require (internal/modules/cjs/helpers.js:16:16)
        at Object.<anonymous> (/var/www/vhosts/user9568/**SITE_NAME**/node_modules/bcrypt/bcrypt.js:6:16)
        at Module._compile (internal/modules/cjs/loader.js:774:30)
        at Object.Module._extensions..js (internal/modules/cjs/loader.js:785:10)
        at Module.load (internal/modules/cjs/loader.js:641:32)
internal/modules/cjs/loader.js:815
返回process.dlopen(模块,path.toNamespacedPath(文件名));
^
错误:/var/www/vhosts/user9568/**站点名称**/node\u模块/bcrypt/lib/binding/napi-v3/bcrypt\u lib.node:无效的ELF头
在Object.Module.\u extensions..节点(internal/modules/cjs/loader.js:815:18)
在Module.load(内部/modules/cjs/loader.js:641:32)
at Function.Module._load(内部/modules/cjs/loader.js:556:12)
at Module.require(内部/modules/cjs/loader.js:681:19)
在Module.require(/usr/share/passenger/helper scripts/node loader.js:80:25)
根据需要(内部/modules/cjs/helpers.js:16:16)

在对象上。

您使用Docker吗?如果是,堆栈溢出可能已经给出了答案


TLDR:dockerginore文件应该包括您的
节点模块
文件夹。

您使用Docker吗?如果是,堆栈溢出可能已经给出了答案


TLDR:dockrignore文件应该包括您的
节点模块
文件夹。

我找到了答案,因为我在Windows计算机上安装了bcrypt,但生产服务器运行Linux意味着它没有正确的文件可供使用


我通过在Linux机器上安装bcrypt,然后将其上载到宿主服务器来修复此问题。

我找到了答案,因为我在Windows机器上安装了bcrypt,但生产服务器运行的是Linux,这意味着它没有正确的文件可供使用


我通过在Linux机器上安装bcrypt,然后将其上载到托管服务器来修复它。

不幸的是,我没有使用Docker。你还有其他建议吗?很遗憾,我没有使用Docker。你还有其他建议吗?