ssl_error_rx_record_too_long和Apache SSL

时间:2020-03-06 14:34:55  来源:igfitidea点击:

我有一个客户试图访问我的网站之一,并且他们不断收到此错误> ssl_error_rx_record_too_long

他们在所有浏览器,所有平台上都收到此错误。我根本无法重现该问题。

我的服务器和我本人位于美国,客户位于印度。

我在问题上用谷歌搜索,主要来源似乎是SSL端口以HTTP讲话。我检查了服务器,但没有发生。我尝试了此处提到的解决方案,但客户表示无法解决问题。

谁能告诉我如何解决此问题,或者如何重现此问题???

解决方案

原来该客户的本地代理配置错误!

希望这可以帮助任何人在以后尝试调试该问题时找到它。

解决方案

向用户询问他们在浏览器中使用的确切URL。如果他们输入https://your.site:80,他们可能会收到ssl_error_rx_record_too_long错误。

在我的情况下,问题是https无法正确启动,因为Listen 443位于" IfDefine SSL"伪指令中,但是我的Apache并非以-DSSL选项开头。解决方法是在以下位置更改我的apachectl脚本:

$HTTPD -k $ARGV

到:

$HTTPD -k $ARGV -DSSL

希望能帮助到别人。

就我而言,我忘记在配置中设置" SSLEngine On"。像这样

<VirtualHost _default_:443>
  SSLEngine On
  ...
</VirtualHost>

http://httpd.apache.org/docs/2.2/mod/mod_ssl.html#sslengine

就我而言,我必须将<VirtualHost *>更改回<VirtualHost *:80>(这是Ubuntu的默认设置)。否则,端口443不使用SSL,而是将纯HTML发送回浏览器。

我们可以非常轻松地检查是否属于这种情况:只需连接到服务器http://www.example.com:443. 如果看到纯HTML,则Apache根本没有在端口443上使用SSL,这很可能是由于VirtualHost配置错误所致。

干杯!

我的问题是由于VPN连接上的MTU较低。

netsh interface ipv4 show inter

Idx  Met   MTU   State        Name
---  ---  -----  -----------  -------------------
  1 4275 4294967295  connected    Loopback Pseudo-Interface 1
 10 4250   **1300**  connected    Wireless Network Connection
 31   25   1400  connected    Remote Access to XYZ Network

使固定:
netsh接口ipv4设置接口"无线网络连接" mtu = 1400

这也可能是非VPN连接上的问题...

我搞砸了虚拟主机配置。请记住,我们需要一个不带SSL的虚拟主机用于端口80,另一个需要带SSL的虚拟主机用于端口443. 我们不能在一个虚拟主机中同时拥有这两个主机,因为webmin生成的配置试图这样做。

我在使用某些浏览器访问SSL站点时遇到了同样的问题。
我发现我必须给fireFox正确的代理(FireFox直接访问Internet)。

根据局域网配置(隧道,过滤,代理重定向),FireFox的"直接访问Internet"模式会引发此错误。

对我来说,解决方案是在Apache 2中未启用" default-ssl"。

我不得不执行a2ensite default-ssl,一切正常。

请查看此链接。

我查看了所有的Apache日志文件,直到找到实际的错误为止(我已将<VirtualHost>从_default_更改为fqdn)。当我修复此错误后,一切正常。

如果在设置新的https vhost后出现错误,并且配置似乎正确,请记住也要链接到" sites-enabled"。