Apache httpd2.4(mod_ssl)中的每个目录CA

Apache httpd2.4(mod_ssl)中的每个目录CA,apache,openssl,mod-ssl,Apache,Openssl,Mod Ssl,Httpd2.4中是否删除了对每个目录CA文件的支持 <Location /directory> Require valid-user SSLVerifyClient require SSLVerifyDepth 5 SSLCACertificateFile /path/to/ca.crt </Location> 需要有效用户 SSLVerifyClient要求 SSLVerifyDepth 5 SSLCACertificateFile/path/to/ca.crt

Httpd2.4中是否删除了对每个目录CA文件的支持

<Location /directory>
Require valid-user

SSLVerifyClient require
SSLVerifyDepth 5
SSLCACertificateFile /path/to/ca.crt
</Location>

需要有效用户
SSLVerifyClient要求
SSLVerifyDepth 5
SSLCACertificateFile/path/to/ca.crt
此代码段适用于httpd2.2.29,但对httpd2.4.10无效,因为“您的SSL库不支持每个目录CA”。很遗憾,我找不到任何证据表明有任何更改(在发行说明中没有提及,mod_ssl的文档是相同的),所以可能是bug


在RHEL上编译,“/configure--包括apr--enable so--with crypto--enable ssl”,openssl 1.0.1e(16.el6_5.15)

根据RedHat,这似乎是预期的行为:

这也发生在我身上;在Apache 2.2.25中,
SSLCACertificateFile
指令在
标记下正常工作

然而,在2.4中似乎没有。经过一些尝试后,我可以将
SSLCACertificateFile
放在
内部,而不是

因此,在Apache 2.4中,请使用:

<VirtualHost localhost:443>
  SSLCACertificateFile /path/to/ca.crt
  <Location /directory>
  ...
  </Location>
</VirtualHost>

SSLCACertificateFile/path/to/ca.crt
...
而不是:

<VirtualHost localhost:443>
  ...
  <Location /directory>
    SSLCACertificateFile /path/to/ca.crt
  ...
  </Location>
</VirtualHost>

...
SSLCACertificateFile/path/to/ca.crt
...

希望有帮助,

并在
virtualhost
上编写,而不是在
.htaccess
中编写。