Express和SSL使用
我已经购买了一个Comodo SSL证书来制作SSL服务器。 我有这些文件。
AddTrustExternalCARoot.crt COMODORSAAddTrustCA.crt COMODORSADomainValidationSecureServerCA.crt mysite.com.key mysite.com.csr mysite_com.crt
根据很多文件,我需要.pem
文件。 但是没有人在说什么.pem文件?
var options = { key: fs.readFileSync('/key.pem'), cert: fs.readFileSync('/cert.pem'), ca: fs.readFileSync('/ca.pem') };
如果有教程,这将是非常棒的。
试试这个答案 。 PEM只是一种比其他SSL格式更为常见的格式。
Comodo可能已经为您提供了.pem文件,但是只是将其命名为.crt。
或者您可以请求.pem文件来代替DER格式的文件。
或者,您可以使用OpenSSL将格式转换为另一种格式。
openssl rsa -inform DER -outform PEM -in mysite.com.key -out mysite.com.key.pem openssl x509 -inform DER -outform PEM -in mysite.com.crt -out mysite.com.crt.pem
简单地启动ssl或使用PEM NPM的简单方法
var https = require('https'), connect = require('connect'), fs = require("fs"); var port = 3000; var options = { key: fs.readFileSync('/key.pem'), cert: fs.readFileSync('/cert.pem'), ca: fs.readFileSync('/ca.pem') }; var app = express(); /* express setting */ server = require('https').createServer(options, app), server.listen(port);
PEM npm是使用SSL启动节点服务器的最简单方法
$> npm install pem var https = require('https'), pem = require('pem'), express = require('express'); pem.createCertificate({days:1, selfSigned:true}, function(err, keys){ var app = express(); https.createServer({key: keys.serviceKey, cert: keys.certificate}, app).listen(443); });