我有一个客户试图访问我的一个站点,他们一直得到这个错误> ssl_error_rx_record_too_long

他们在所有浏览器,所有平台上都得到这个错误。我根本无法重现这道题。

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

我在谷歌上搜索了这个问题,主要来源似乎是SSL端口在HTTP中说话。我查了我的服务器,这是不可能的。我尝试了这里提到的解决方案,但客户表示它没有解决问题。

有没有人能告诉我如何修复这个,或者如何复制这个?

解决方案

原来客户有一个配置错误的本地代理!


当前回答

对我来说,解决方案是我的ddclient没有正确地cronning…

其他回答

在我的情况下,我在虚拟主机文件中有错误的IP地址。监听是443,节是<VirtualHost 192.168.0.1:443>,但是服务器没有192.168.0.1地址!

在我的情况下,我必须将<VirtualHost *>更改为<VirtualHost *:80>(这是Ubuntu上的默认值)。否则,端口443没有使用SSL,而是将普通HTML发送回浏览器。

您可以很容易地检查这是否是您的情况:只需连接到服务器http://www.example.com:443。如果您看到的是纯HTML,那么您的Apache根本没有在端口443上使用SSL,很可能是由于VirtualHost配置错误。

干杯!

对我来说,解决方案是我的ddclient没有正确地cronning…

我有一个混乱的虚拟主机配置。请记住,80端口需要一个不带SSL的虚拟主机,443端口需要另一个带SSL的虚拟主机。您不能像webmin生成的配置所尝试的那样,在一个虚拟主机中同时拥有两者。

Subimage提到的链接对我来说是正确的。它建议更改虚拟主机标记,例如,从<VirtualHost myserver.example.com:443>到<VirtualHost _default_:443>

Error code: ssl_error_rx_record_too_long This usually means the implementation of SSL on your server is not correct. The error is usually caused by a server side problem which the server administrator will need to investigate. Below are some things we recommend trying. Ensure that port 443 is open and enabled on your server. This is the standard port for https communications. If SSL is using a non-standard port then FireFox 3 can sometimes give this error. Ensure SSL is running on port 443. If using Apache2 check that you are using port 443 for SSL. This can be done by setting the ports.conf file as follows Listen 80 Listen 443 https Make sure you do not have more than one SSL certificate sharing the same IP. Please ensure that all SSL certificates utilise their own dedicated IP. If using Apache2 check your vhost config. Some users have reported changing <VirtualHost> to _default_ resolved the error.

这解决了我的问题。我很少收到错误消息,但第一次找到正确答案!: -)

除了以上这些,还有一些其他人发现的导致这个问题的解决方案:

请确保您的SSL证书没有过期 尝试指定密码: SSLCipherSuite: aNULL:抗利尿激素:! eNULL:低:!经验:RC4 + RSA: +高:+媒介:+ SSLv3