如何为 express.js 服务器设置 SSL 证书?

问题描述:

以前,在较旧版本的 express 中,我可以这样做:

Before, in an older version of express, I could do this:

express.createServer({key:'keyFile', cert:'certFile'});

但是,在较新版本的 express 中,这不再有效:

However, in newer versions of express this no longer works:

var app = express();

我应该调用 app.use() 来设置证书吗?如果是这样怎么办?

Should I call app.use() to set the certs? If so how?

请参阅Express 文档以及https.createServer 的节点文档(这是 express 推荐使用的):

See the Express docs as well as the Node docs for https.createServer (which is what express recommends to use):

var privateKey = fs.readFileSync( 'privatekey.pem' );
var certificate = fs.readFileSync( 'certificate.pem' );

https.createServer({
    key: privateKey,
    cert: certificate
}, app).listen(port);

createServer 的其他选项位于:http://nodejs.org/api/tls.html#tls_tls_createserver_options_secureconnectionlistener

Other options for createServer are at: http://nodejs.org/api/tls.html#tls_tls_createserver_options_secureconnectionlistener