Https ssl的Apache 2.4配置不起作用

Https ssl的Apache 2.4配置不起作用,https,apache2,tomcat7,mod-jk,Https,Apache2,Tomcat7,Mod Jk,带有mod_jk 1.3.7的Apache服务器2.4不适用于ssl(https) 错误1: 名为的Apache服务报告了以下错误: SSLSessionCache:“shmcb”会话缓存不受支持(已知名称:)。也许您需要加载适当的socache模块(mod_socache_shmcb?) 错误2: 故障应用程序名称:httpd.exe,版本:2.4.4.0,时间戳:0x512fec36 故障模块名称:mod_jk.so,版本:1.2.37.0,时间戳:0x4fc48072 异常代码:0xc00

带有mod_jk 1.3.7的Apache服务器2.4不适用于ssl(https)

错误1:

名为的Apache服务报告了以下错误:

SSLSessionCache:“shmcb”会话缓存不受支持(已知名称:)。也许您需要加载适当的socache模块(mod_socache_shmcb?)

错误2:

故障应用程序名称:httpd.exe,版本:2.4.4.0,时间戳:0x512fec36 故障模块名称:mod_jk.so,版本:1.2.37.0,时间戳:0x4fc48072 异常代码:0xc0000005 故障偏移量:0x000000000000752d 出错进程id:0x3580 故障应用程序启动时间:0x01cee6d2be493d71 出现故障的应用程序路径:C:\Program Files\Apache Software Foundation\Apache2.4\bin\httpd.exe 故障模块路径:C:\Program Files\Apache Software Foundation\Apache2.4\modules\mod_jk.so 报告Id:f8d090fa-52c6-11e3-bce9-e4d53d737212

我们对
httpd_ssl.conf
的配置如下:

Listen 443

SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5

SSLPassPhraseDialog  builtin

SSLSessionCache        "shmcb:C:/Program Files/Apache Software Foundation/Apache2.4/logs/ssl_scache(512000)"
SSLSessionCacheTimeout  300

<VirtualHost _default_:443>

DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.4/htdocs"
ServerName 127.0.0.1:443
ServerAdmin admin@mshome.net
ErrorLog "C:/Program Files/Apache Software Foundation/Apache2.4/logs/error.log"
TransferLog "C:/Program Files/Apache Software Foundation/Apache2.4/logs/access.log"

SSLEngine on

SSLCertificateFile "C:/Program Files/Apache Software Foundation/Apache2.4/conf/serverssl.crt"

SSLCertificateKeyFile "C:/Program Files/Apache Software Foundation/Apache2.4/conf/server.key"

SSLCACertificateFile "C:/Program Files/Apache Software Foundation/Apache2.4/conf/bundle.crt"

<FilesMatch "\.(cgi|shtml|phtml|php)$">
    SSLOptions +StdEnvVars
</FilesMatch>
<Directory "C:/Program Files/Apache Software Foundation/Apache2.4/cgi-bin">
    SSLOptions +StdEnvVars
</Directory>

BrowserMatch "MSIE [2-5]" \
     nokeepalive ssl-unclean-shutdown \
     downgrade-1.0 force-response-1.0

CustomLog "C:/Program Files/Apache Software Foundation/Apache2.4/logs/ssl_request.log" \
      "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

</VirtualHost> 
听443
SSLCipherSuite高:中:!阿努尔:!MD5
SSLPassPhraseDialog内置
SSLSessionCache“shmcb:C:/Program Files/Apache Software Foundation/Apache2.4/logs/ssl_scache(512000)”
SSLSessionCacheTimeout 300
DocumentRoot“C:/Program Files/Apache软件基金会/Apache2.4/htdocs”
服务器名127.0.0.1:443
服务器管理员admin@mshome.net
ErrorLog“C:/Program Files/Apache Software Foundation/Apache2.4/logs/error.log”
TransferLog“C:/Program Files/Apache软件基金会/Apache2.4/logs/access.log”
斯伦金安
SSLCertificateFile“C:/Program Files/Apache Software Foundation/Apache2.4/conf/serverssl.crt”
SSLCertificateKeyFile“C:/Program Files/Apache软件基金会/Apache2.4/conf/server.key”
SSLCACertificateFile“C:/Program Files/Apache Software Foundation/Apache2.4/conf/bundle.crt”
发展+标准
发展+标准
浏览器匹配“MSIE[2-5]”\
nokeepalive ssl不干净关闭\
降级-1.0力响应-1.0
CustomLog“C:/Program Files/Apache Software Foundation/Apache2.4/logs/ssl_request.log”\
%t%h%{SSL\u协议}x%{SSL\u密码}x\%r\%b

蒂娅

在Apache2.2中,默认情况下,
apache/conf/httpd.conf
中未注释以下行

加载模块socache\u shmcb\u模块/mod\u socache\u shmcb.so

在Apache2.4中,上面的一行是注释的,因此请删除前面的
符号


这应该是可行的。

对于el capitan,
so
文件的路径是
/usr/libexec/apache2/mod_socache\u shmcb.so

我在
httpd.conf
中的条目如下所示:

LoadModule socache_shmcb_module /usr/libexec/apache2/mod_socache_shmcb.so

cp/etc/apache2/mods可用/socache_shmcb.load/etc/apache2/mods启用/

这将解决以下问题: SSLSessionCache:“shmcb”会话缓存不受支持(已知名称:)。也许您需要加载适当的socache模块(mod_socache_shmcb?)。

在apache 2.4.25-3+deb9u4(显然是Debian)上,@Roshan Pawar先生提到的行不存在。您必须创建一个指向模块的符号链接,并通过以下方式在
/etc/apache2/mods enabled
中启用该模块:

ln-s../mods可用/socache\u shmcb.load socache\u shmcb.load

正如@ericP所说,有必要重新启动apache,这取决于您的发行版/配置,可能是:

service apache2 restart
/etc/init.d/apache2 restart
systemctl restart apache2
apache2 -k restart

对于Apache2.4。在Ubuntu:

sudo a2enmod socache_shmcb

对于新手访问。关于相同的问题,您可能需要将
模块/mod_socache\u shmcb.so
的链接更改为共享对象所在的位置。我的地址是
/usr/lib/apache2/modules/mod_socache_shmcb。所以
。感谢这个答案,它节省了我的时间。我取消了行注释,问题仍然存在,怎么办?这个解决方案让我走上了正确的方向,但并不完全适用于我的apache版本(apache/2.4.18(Ubuntu))。我必须将模块socache_shmcb.load链接到mods enabled中,这为我解决了问题。复制二进制文件的糟糕做法,正确的方法是指向符号链接。在此之后,您可能需要进行野蛮的重新加载。我尝试了一次优雅的重新加载(
sudo/etc/init.d/apache2-reload
),但仍然看到“'shmcb'会话缓存不受支持”。它使用了一个
停止
和一个
启动
。谢谢@ericP,这是真的,需要重新启动,重新加载只会“刷新”应用的更改,在这种情况下,我们在Apache中添加了一些“新的”(即正在激活的新模块)。我已经更新了答案。