免责声明:您无需知道Node
即可回答此问题,但这会有所帮助。
我有一个Node服务器,我需要使用HTTPS。当我在互联网上进行研究时,我发现我必须做这样的事情:
var fs = require('fs');
var credentials = {
key: fs.readFileSync('path/to/ssl/private-key'),
cert: fs.readFileSync('path/to/ssl/cert'),
ca: fs.readFileSync('path/to/something/called/CA')
};
var app = require('https').createServer(credentials, handler);
我有几个问题。首先,我发现的所有例子都使用完全不同的方法。
某些链接指向证书和.pem
的{{1}}个文件。我不知道key
个文件是什么,但我知道我的证书是pem
,我的密钥是.crt
。有些人从根文件夹开始,有些人似乎只在应用程序目录中有这些.key
个文件。我没有。
有些人也使用.pem
,有些则没有。根据一些文章,这个ca
应该是CA
- 但没有一个解释在哪里可以找到这个文件。在我的服务器上的my domain's CA bundle
目录中,我在ssl
目录中有一个.crt
文件,在certs
目录中有一个.key
文件,除了空keys
目录和csrs
文件。
那么,我在哪里可以找到这3个文件(key,cert,ca)以及如何正确链接它们?
答案 0 :(得分:2)
区别在于:
__dirname
指的是脚本所在的目录
.
指的是您调用nodejs命令的位置。 ..
指的是其父文件夹。
示例:
cwd > node script.js
.
和__dirname
都是相同的cwd
cwd > node /path/to/script.js
.
为cwd
,__dirname
为/path/to
。