该指令的文档声明如下:
这个目录中的文件必须是PEM编码的,并通过哈希文件名来访问。 所以通常你不能把证书文件放在那里:你还必须创build名为hash-value.N的符号链接。 你应该确保这个目录包含适当的符号链接。
我有两个问题:
实用 :理论上可以将两个不同的证书散列为相同的值。 在这种情况下,使用扩展名可以保留两个证书。 只要只有一个使用该散列的证书,扩展并不重要,您可以select任何您喜欢的数字。 (我不认为我见过任何人使用0以外的任何东西,但是没有任何规则反对它)。
概念 :散列基于证书主题名称。 使用它而不是文件名的目的是,当程序(在这种情况下,Apache)需要find一个证书,它可以要求证书主体名称的散列,而不是必须保持一个内部表包含哪个文件哪个证书主题名称。
man x509和寻找hash会给你一点信息,但不多。
(另外,你实际上不需要有符号链接 – 你也可以用它的哈希名称来命名证书文件,但是将符号链接到“subjectname.pem”当然会使我们更容易找出哪个证书是哪一个。)