我有一个SSL的Apache配置,如下所示:
SSLCertificateFile ~/certs/server.crt
SSLCertificateKeyFile ~/certs/server.key
SSLCertificateChainFile ~/certs/bundle.crt
现在在我的NodeJs服务器中,我正在将grunt与grunt-connect用作服务器。
grunt-connect
的文档说,可以使用以下语法对其进行配置。grunt.initConfig({
connect: {
server: {
options: {
protocol: 'https',
port: 8443,
key: grunt.file.read('server.key').toString(),
cert: grunt.file.read('server.crt').toString(),
ca: grunt.file.read('ca.crt').toString()
},
},
},
});
我需要此配置来匹配我的Apache配置。它具有一个证书文件,一个密钥文件以及一个捆绑文件。
查看NodeJ中tls.createServer的文档,
我没有看到一个看起来像它等同于
SSLCertificateChainFile
的选项。如何使我的NodeJ连接服务器镜像与我的Apache服务器相同的SSL配置?
编辑
我还将把赏金授予能够做到这一点的人:
创建一个SSCCE
Gruntfile
来演示如何配置connect
以接受服务器证书和捆绑包证书。 最佳答案
您可以尝试将server.crt和ca.crt文件合并为一个文件,并在cert
选项中使用result。不要使用ca
选项,因为根据docs,仅在“如果客户端使用自签名证书”时才需要。