我已经有这个问题已经有一段时间了,但是无法理解......我没有尝试过任何真正有用的东西。从ssl文件转换为许多不同的格式并检查文件夹权限没有任何效果(或者,更明确的是,它应该是工作的一切)。有谁知道什么可能会关闭?非常感谢你的帮助,我现在正处于绝望的一面......
这可能与版本有关吗?我如何检查是否属实?
这是我的代码:
var ssl_options = {
pfx : fs.readFileSync(my_pfx_path),
passphrase: 'password'
};
//OR
var ssl_options = {
key : fs.readFileSync(my_key_path),
cert : fs.readFileSync(my_cert_path)
};
var protocol = "https";
preparedApp = require(protocol).createServer(ssl_options,app);
var io = require('socket.io')(preparedApp);
preparedApp.listen(8080, function(){});
io.on('connection', function(socket){});
这是我的ssl_options的日志......
{ key: <Buffer 41 ...>,
cert: <Buffer 4a ...> }
标题throw new Error('Missing PFX or certificate + private key.');
中的错误导致此错误。
完整跟踪日志:
Error: Missing PFX or certificate + private key.
at Server (tls.js:1127:11)
at new Server (https.js:35:14)
at Object.Server (https.js:29:41)
at Object.<anonymous> (/nginx/script.js:477:34)
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 Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
有人可以帮助我吗? tyvm ...
我正在使用socket.io版本1.3.7 证书在浏览器/ nonsocket.io中使用常规https。文件是正确的,所以我真的不知道为什么会发生这种情况
答案 0 :(得分:3)
我的代码中有一个破坏的if子句,它将协议返回到“http”并在尝试获取ssl信息时导致错误...