我已经在Debian 7(Wheezy)上将我的Apache 2.2升级到Apache 2.4.10,以便使用更强的DH密钥。我还将openssl升级到OpenSSL 1.0.1k。
我一直在尝试将以下命令添加到我的Apache2配置中:
SSLOpenSSLConfCmd DHParameters "/etc/ssl/private/dhparams_4096.pem"
但每次我将其添加到配置文件时,我收到以下错误:
AH00526:第83行的语法错误 /etc/apache2/mods-enabled/ssl.conf:
命令无效 'SSLOpenSSLConfCmd',可能拼写错误或由模块定义 包含在服务器配置中的操作'configtest'失败。
从我在互联网上看到的这个错误发生在2.4.8之前使用Apache版本时。我正在使用2.4.10,所以我可以将其作为一个问题来排除。有谁知道什么可能导致这个问题?
编辑:
认为问题可能出在我正在使用的OpenSSL版本上,我已经从“Stretch”repos安装了OpenSSL 1.0.2。它安装正确,我重新启动Apache,它似乎工作。但是,我去添加上面的注释,我得到了同样的错误。
编辑2:
我研究了 phpinfo();
输出,我在OpenSSL部分注意到了这一点:
OpenSSL Library Version OpenSSL 1.0.1k 8 Jan 2015
OpenSSL Header Version OpenSSL 1.0.1k 8 Jan 2015
我已经回到服务器并运行了 openssl version
,已经给出了这个输出:
OpenSSL 1.0.2f 28 Jan 2016
因此无论出于何种原因,Apache都无法识别系统上较新版本的OpenSSL。我已经多次重启Apache,服务器已重启,但phpinfo()输出保持不变。