【问题标题】:Cannot find module 'forwarded'找不到模块“转发”
【发布时间】:2014-12-29 14:47:37
【问题描述】:

我正在尝试在 https://www.openshift.com/ 上托管我的网站。它是 node.js 服务器端和 angular.js 客户端的网站。我使用了 node.js (Node.js 0.10) 默认应用程序并添加了一个 MongoDB 2.4 墨盒。

现在,当我运行网站时,我拥有:Service Temporarily Unavailable。 我已经连接到我的应用程序 uning ssh,在运行以下命令时,这就是我所拥有的:

> cd $OPENSHIFT_REPO_DIR
> node server.js -e production

module.js:340
    throw err;
          ^
Error: Cannot find module 'forwarded'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/var/lib/openshift/5456b331e0b8cd980200004a/app-root/
runtime/repo/node_modules/express/node_modules/proxy-addr/index.js:19:17)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)

看起来像一个依赖问题,但我不知道如何解决这个问题。应用程序在 localhost 中正常运行。

编辑回应丹尼尔:

这是我所拥有的:

> cd $OPENSHIFT_REPO_DIR; npm install
npm WARN package.json express@4.9.8 No README data
npm WARN package.json mocha@1.21.4 No README data
npm WARN package.json passport-local-mongoose@0.3.0 No README data
npm WARN package.json passport@0.2.1 No README data
npm WARN package.json chai@1.9.1 No README data
npm http GET https://registry.npmjs.org/bcrypt-nodejs
npm http 304 https://registry.npmjs.org/bcrypt-nodejs
npm WARN unmet dependency /var/lib/openshift/5456b331e0b8cd980200004a/app-root/r
untime/repo/node_modules/express/node_modules/send requires on-finished@'2.1.0'
but will load
npm WARN unmet dependency /var/lib/openshift/5456b331e0b8cd980200004a/app-root/r
untime/repo/node_modules/express/node_modules/on-finished,
npm WARN unmet dependency which is version 2.1.1

【问题讨论】:

    标签: node.js mongodb openshift http-status-code-503


    【解决方案1】:

    我自己在使用 nextjs 应用时遇到了这个问题。

    可能的原因

    我认为原因是我从 package.json 文件中删除了一个包,但没有删除带有 npm uninstall/yarn remove 的包,所以我的锁定文件仍在寻找它。

    解决方案

    最后我删除了我的 yarn.lock 文件(如果你使用的是 yarn)并删除了我的 node_modules 文件夹,然后运行了 yarn install (npm install),一切都恢复了

    备份解决方案

    您还可以重建任何您怀疑会给您带来问题的软件包。通常会做到这一点。特别是如果您最近升级了 Node。

    【讨论】:

    • 删除 package-lock.json 刚刚解决了这个问题。谢谢!
    【解决方案2】:

    确保您已在服务器上安装依赖项。

    $ cd $OPENSHIFT_REPO_DIR; npm install
    

    【讨论】:

      猜你喜欢
      • 2022-12-15
      • 1970-01-01
      • 2016-09-29
      • 2018-02-21
      • 2018-11-16
      • 2020-01-05
      • 2021-07-23
      相关资源
      最近更新 更多