Firefox中的ssl_error_rx_record_too_long连接错误

我试图在Apache中设置SSL,但是当我在Firefox中的服务器时,我得到以下错误信息:

在与sludge.home的连接期间发生错误。

SSL收到的logging超出了允许的最大长度。

(错误代码:ssl_error_rx_record_too_long)

我的虚拟主机configuration文件看起来像这样。

<IfDefine SSL> <VirtualHost *:443> ServerName sludge.home SSLEngine on SSLCertificateFile /usr/local/apache/cert/server.crt SSLCertificateKeyFile /usr/local/apache/cert/server.pem SSLProtocol -SSLv2 SSL CipherSuite HIGH:!ADH:!EXP:!MD5:!NULL DocumentRoot "/usr/local/apache/htdocs" ServerAdmin [email protected] <Location /> AuthType Digest AuthName "private area" AuthDigestDomain / AuthDigestProvider file AuthUserFile /usr/local/apache/passwd/digest_pw Require valid-user </Location> <Directory /usr/local/apache/htdocs/bugz> AddHandler cgi-script .cgi Options +Indexes +ExecCGI DirectoryIndex index.cgi AllowOverride Limit FileInfo Indexes </Directory> <Directory /usr/local/apache/htdocs/bugzilla> AddHandler cgi-script .cgi Options +Indexes +ExecCGI DirectoryIndex index.cgi AllowOverride Limit FileInfo Indexes </Directory> <Directory /> Options FollowSymLinks AllowOverride None Order deny,allow Deny from all </Directory> <Directory "/usr/local/apache/htdocs"> Options Indexes FollowSymLinks Allow Override None Order allow,deny Allow from all </Directory> <IfModule dir_module> DirectoryIndex index.html </IfModule> <FilesMatch "^\.ht"> Order allow,deny Deny from all Satisfy All </FilesMatch> </VirtualHost> </IfDefine> 

到此服务器的telnet显示服务器正在发回纯HTML。 更进一步,似乎mod_ssl不加载/工作,即使当我httpd -l显示为静态编译。

我已经用尽了所有我能想到的途径。

这个错误通常表明HTTPS没有正确设置(它使用普通的HTTP进行响应)。 我假设你已经定义了Listen 443 ,因为你可以连接它。

您的configuration包含<IfDefine SSL> 。 这意味着HTTPd必须以-DSSL选项开始。 要么省略<IfDefine SSL>和相关的</IfDefine>部分,要么使用-DSSL选项启动Apache。

从httpd :

-D参数

设置可以在configuration文件中使用的configuration参数,以便在服务器启动和重新启动时有条件地跳过或处理命令。 也可以用来设置一些不太常见的启动参数,包括-DNO_DETACH(防止父分支)和-DFOREGROUND(防止父母调用setsid()等)。

这个serverfault线程可能包含你的答案