【问题标题】:Error starting nodejs: openssl config failed启动 nodejs 时出错:openssl 配置失败
【发布时间】:2018-09-05 14:57:56
【问题描述】:

启动 Express 节点时出现以下错误:

openssl 配置失败:错误:02001003:系统库:fopen:没有这样 进程

节点无论如何都会启动。 我没有尝试使用 SSL。

这里是起始代码:

...
app = Express;
app.set('port', process.env.PORT || config.port);
try {

    var server = app.listen(app.get('port'), function () {
        console.log('Express server listening on port ' + server.address().address + ':' + server.address().port);
    });
} catch (e) {
    log.fatal(e);
}

仅在部署服务器上发生。在开发者机器上运行正常。

【问题讨论】:

    标签: node.js express


    【解决方案1】:

    问题在于 Express 查找环境变量 OPENSSL_CONF 以查找 SSL 配置文件。

    变量OPENSSL_CONF 指向驱动器上不存在的位置。 我从系统中删除,消息消失了。

    注意:必须使用新的控制台来启动节点,因此环境变量 OPENSSL_CONF 不存在。或者在当前控制台简单删除。

    更多信息github

    【讨论】:

      【解决方案2】:

      删除全局环境变量 OPENSSL_CONF(之前故障排除的遗留问题)解决了我的问题。

      在 Windows 上运行你可能会尝试:

      在本地命令窗口设置环境并验证问题:

      set OPENSSL_CONF=c:\dummy  
      npm -v
      

      =>您现在可能会看到这条 ssl 错误消息

      删除环境并验证问题已解决:

      set OPENSSL_CONF=
      npm -v
      

      => 没有 ssl 错误信息

      来源:https://github.com/npm/npm/issues/17261

      【讨论】:

      • 精彩解答
      【解决方案3】:

      请检查系统变量并确认列出的 openssl.cnf 文件的位置是否正确。交叉检查并更新系统变量中的位置。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-08-19
        • 1970-01-01
        • 1970-01-01
        • 2021-09-17
        • 2022-07-07
        • 1970-01-01
        • 2022-12-22
        相关资源
        最近更新 更多