【问题标题】:Invalid ELF Header on Production Server生产服务器上的 ELF 标头无效
【发布时间】:2023-03-16 16:06:01
【问题描述】:

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

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)

实时服务器使用 Plesk。如有任何建议,我将不胜感激。

另外,请注意 * * SITE_NAME * * 是网站的域名,出于显而易见的原因,我不想将其包含在这篇文章中。

Picture of Error

【问题讨论】:

    标签: node.js plesk


    【解决方案1】:

    你使用 Docker 吗?如果是的话,Stack Overflow 上的this question 可能已经给你答案了。

    TLDR:.dockerignore 文件应包含您的 node_modules 文件夹。

    【讨论】:

    • 不幸的是,我没有使用 Docker。您还有其他建议吗?
    【解决方案2】:

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

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

    【讨论】:

      猜你喜欢
      • 2018-11-29
      • 1970-01-01
      • 2012-09-17
      • 2021-11-18
      • 2016-11-29
      • 2015-06-14
      • 2013-07-28
      • 2019-10-20
      • 2012-06-21
      相关资源
      最近更新 更多