我正在尝试使用 ssl 连接 node.js 服务器和 socket.io。我的服务器安装了 windows 2008 server 和 iis。我在 IIS 上安装了 ssl 我的域名,我可以通过 http s://mydomain.com 连接到我的域。但是我不能用 ssl 连接我的 node.js 服务器。我在我的服务器上使用以下代码,您知道问题出在哪里吗?
var fs = require('fs');
var options = {
pfx: fs.readFileSync('sslkey.pfx'),
passphrase:'password'
};
var express = require('express'),
app = express(),
server = require('https').createServer(options,app),
server2 = require('http').createServer(app),
io = require('socket.io').listen(server, {log: true});
function sendCrossDomain(req, res){
//return;
res.set('Content-Type', 'text/xml; charset=utf-8');
res.sendfile(__dirname + '/crossdomain-test.xml');
};
app.get('/crossdomain.xml', sendCrossDomain);
app.get('/', sendCrossDomain);
server.listen(9595);
最佳答案
假设你运行node程序时证书没有报错,
我会检查以确保在 TCP 9595 上打开了防火墙端口。
您还必须使用 https://yourdomain.com:9595 请求页面为了访问正在运行的程序,因为它是 SSL 并且在与 443 不同的端口上。
关于带有 ssl 连接的 Node.js socket.io,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28286845/