bcrypt破坏了我的流星应用程序,我该如何解决?

时间:2015-03-30 07:25:41

标签: node.js ubuntu nginx meteor bcrypt

我不确定这应该是stackoverflow还是serverfault问题。

我安装了Meteor的帐户密码模块,它在本地运行,但在部署到服务器时损坏了我的应用程序。这是独家新闻:

我在OSX上运行最新的Meteor 1.0.5(操作系统刚刚完全更新) 使用--architecture os.linux.x86_64构建 部署到Ubuntu 14.04.2 LTS x86_64(刚刚更新) 运行nodejs v0.12.1(刚建成) 使用nginx v1.4.0提供应用程序

仍然得到:

/home/secrethistory/bundle/programs/server/node_modules/fibers/future.js:245
                                            throw(ex);
                                                  ^
Error: Module did not self-register.
    at Error (native)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at bindings (/home/secrethistory/bundle/programs/server/npm/npm-bcrypt/node_modules/bcrypt/node_modules/bindings/bindings.js:74:15)
    at Object.<anonymous> (/home/secrethistory/bundle/programs/server/npm/npm-bcrypt/node_modules/bcrypt/bcrypt.js:3:35)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)

接下来要查看的任何提示或地点?

3 个答案:

答案 0 :(得分:26)

bcrypt模块依赖于平台(作为光纤),因此您需要在解压缩服务器中的软件包后删除软件包:

rm -R path/to/bcrypt

然后再次安装:

npm install bcrypt

答案 1 :(得分:1)

从Meteor 1.0.5开始(这也适用于即将发布的1.1),我们尚未完成使用Node 0.12的完整测试,验证和QA流程。我建议坚持使用Node 0.10直到那一点。虽然它很可能会起作用,但有可能需要进行一些核心更改,而且正如您所见,针对0.10 ABI构建的二进制包不能使用0.12。< / p>

答案 2 :(得分:0)

从源头重建bycrypt解决了我的问题

npm rebuild bcrypt --build-from-source