如何配置nodejs/expressjs通过https为页面提供服务?
问题描述:
我有一个证书和密钥,我希望通过https为我的页面提供服务。如何配置nodejs/expressjs这样做?如何配置nodejs/expressjs通过https为页面提供服务?
我明确希望通过expressjs库来做到这一点。
答
如果使用0.2.4。您可以使用
var express = require('express');
var fs = require("fs");
var crypto = require('crypto');
var app = express.createServer();
var privateKey = fs.readFileSync('privatekey.pem').toString();
var certificate = fs.readFileSync('certificate.pem').toString();
var credentials = crypto.createCredentials({key: privateKey, cert: certificate});
app.setSecure(credentials);
但是这不可能的,如果你使用节点0.4,因为你不能叫setSecure()将服务器转换为SSL。必须创建一个https.Server的实例。
我不知道是否有任何未来的计划,以支持该
+0
express现在支持创建HTTPS服务器 var app = require('express')。createServer({key:...}); – amira 2011-03-20 06:53:06
http://nodejs.org/docs/v0.4.1/api/https.html? – Shoban 2011-02-25 18:17:16
可能重复[在NodeJS中创建HTTPS客户端](http://stackoverflow.com/questions/4940646/create-https-client-in-nodejs) – Shoban 2011-02-25 18:25:37
@Shoban链接的问题使用nodejs作为客户端,而不是服务器。 – blueberryfields 2011-02-25 18:43:20