【问题标题】:ssl_error_rx_record_too_long and Apache SSL [closed]ssl_error_rx_record_too_long 和 Apache SSL [关闭]
【发布时间】:2010-09-12 06:30:21
【问题描述】:

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

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

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

我在谷歌上搜索了这个问题,主要来源似乎是 SSL 端口在 HTTP 中说话。我检查了我的服务器,但没有发生这种情况。我试过the solution mentioned here,但客户说它没有解决问题。

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

解决方案

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

希望能帮助任何发现此问题的人在未来尝试调试它。

【问题讨论】:

  • 我认为这也可能是由于他们一方的代理配置错误造成的。对此也有什么想法吗?
  • 因为它被关闭为题外话但似乎是一个非常有价值的问题(在谷歌中排名非常高的这个错误消息)也许它应该移动到 ServerFault?这是一个有 6 年历史的问题,所以最初提出问题时可能没有 SF...
  • 这是 SSL_ERROR_RX_RECORD_TOO_LONG 的第一个网络搜索结果。它有 32 个最爱、193 个赞、多个赞的答案……根据一个比我们其他人更清楚这个问题无权存在的人的说法,它已被关闭为题外话。
  • 我可以使用openssl s_client -connect my-domain.tld:443调试生成此消息的证书问题
  • @Subimage "解决方案原来客户的本地代理配置错误!"请解释一下这是什么意思。你可以更具体;知道您有解决方案但没有明确说明,这令人沮丧

标签: apache configuration ssl webserver mod-ssl


【解决方案1】:

link mentioned by Subimage 对我来说是正确的。建议修改虚拟主机标签,即从<VirtualHost myserver.example.com:443>改为<VirtualHost _default_:443>

错误代码:ssl_error_rx_record_too_long

这通常意味着您的服务器上的 SSL 实施不正确。该错误通常是由服务器管理员需要调查的服务器端问题引起的。

以下是我们推荐尝试的一些方法。

  • 确保在您的服务器上打开并启用端口 443。这是 https 通信的标准端口。

  • 如果 SSL 使用非标准端口,则 FireFox 3 有时会出现此错误。确保 SSL 在端口 443 上运行。

  • 如果使用 Apache2,请检查您是否使用端口 443 进行 SSL。这可以通过如下设置 ports.conf 文件来完成

    Listen 80
    Listen 443 https
    
  • 确保您没有多个 SSL 证书共享同一个 IP。请确保所有 SSL 证书都使用自己的专用 IP。

  • 如果使用 Apache2,请检查您的虚拟主机配置。一些用户报告将<VirtualHost> 更改为_default_ 解决了该错误。

这解决了我的问题。我很少在谷歌上搜索错误消息并获得正确答案的第一击! :-)

除了上述之外,还有其他一些其他人发现的导致问题的解决方案:

  • 确保您的 SSL 证书未过期

  • 尝试指定密码:

    SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM:+SSLv3

【讨论】:

  • 只是为了添加到要检查的事项列表中,在检查了所有这些项目之后,我不得不将我的 default :443> 交换为 让它最终工作。
  • 我在 whm/Cpanel 服务器上遇到了这个问题。我刚刚重新安装了 ssl 来解决这个问题。
  • _default_:443 为我工作。不,我可以去睡觉了!
  • @Randall :这可能看起来很愚蠢,但也要确保 Apache 读取您的“[website_domain].conf”。 (在 if 中写垃圾并确保 apache 在启动时抱怨)。我有这个错误只是因为我忘记了符号链接末尾的 .conf 。因此 Apache 没有使用 conf,而是发送纯 HTML(错误页面)而不是要求 SSL 身份验证。
  • 另外,检查并确保您没有其他 VirtualHost conf 文件以不正确的设置监听端口 443。一个错误的 conf 文件可能会导致所有 SSL 站点宕机。
【解决方案2】:

我的解决方案是 default-ssl 没有在 apache 2 中启用.... 只是把 SSLEngine On

我必须执行 a2ensite default-ssl 并且一切正常。

【讨论】:

  • 我使用过a2enmod ssl,但忘记在默认虚拟主机配置中使用a2ensite default-ssl。谢谢!
  • 他们真的应该在 Ubuntu 中启用 default-ssl
【解决方案3】:

就我而言,我必须将 改回 (这是 Ubuntu 上的默认设置)。否则,端口 443 未使用 SSL,而是将纯 HTML 发送回浏览器。

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

干杯!

【讨论】:

  • localhost:443 加载 plian html,怎么办?
  • @niran 我想这取决于您的操作系统默认值 <VirtualHost> 指令。尝试找出默认值并进行相应调整,并确保在该 VirtualHost 上启用了 SSL。
  • vhost 有这个问题,因为 000-default.conf 有一个未使用的 :443 部分没有 SSLEngine。 Apache 日志显示了这一点,这让我走上了正轨:AH01916: Init: (myhost.example.com:443) You configured HTTP(80) on the standard HTTPS(443) port!
  • 我的问题是我没有运行“sudo a2ensite default-ssl.conf”。 ssl conf 根本不在 sites-enabled 目录中,仅在 sites-available 中。
【解决方案4】:

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

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

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

【讨论】:

  • 是的,这将修复 wamp 3.2 / apache 2.4.46。谢谢
【解决方案5】:

如果您在设置新的 https 虚拟主机后遇到错误并且配置似乎正确,请记得链接 sites-enabled

【讨论】:

  • 听起来很愚蠢,但它抓住了我
  • 使用 a2ensite 而不是链接,这是大多数系统上的正确方式
  • 另外,检查 apache2.conf (Ubuntu) 中的规则: IncludeOptional sites-enabled/*.conf 。确保您的链接以“.conf”结尾或更改该规则以包含所有文件。
  • 我使用正确的语法创建了站点配置并将其链接到可用站点。问题是:我的配置名称没有以“.conf”结尾,因此它从未加载过,我得到了上述错误。在我的例子中,配置加载了指令“IncludeOptional sites-enabled/*.conf”,因此配置也必须命名为 .conf。微不足道,但不会导致任何语法错误(毕竟从未加载过),并且因为 ls 在可用站点中显示它而令人恼火...
【解决方案6】:

老问题,但我的第一个结果是谷歌,所以这就是我必须做的。

安装了 Apache 的 Ubuntu 12.04 桌面

当我安装 Apache 时,所有配置和 mod_ssl 都已安装,但只是尚未在正确的位置链接。注意:以下所有路径都是相对于 /etc/apache2/

mod_ssl存储在./mods-available中,SSL站点配置在./sites-available中,您只需将它们链接到它们在./mods-enabled./sites-enabled中的正确位置

cd /etc/apache2
cd ./mods-enabled
sudo ln -s ../mods-available/ssl.* ./
cd ../sites-enabled
sudo ln -s ../sites-available/default-ssl ./

重新启动 Apache,它应该可以工作。我试图访问https://localhost,因此您的结果可能因外部访问而异,但这对我有用。

【讨论】:

  • 命令“a2ensite default-ssl”和“a2enmodule ssl”简化了模块和站点符号链接的管理。
【解决方案7】:

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

【讨论】:

【解决方案8】:

就我而言,我在虚拟主机文件中的 IP 地址有误。监听是 443,节是 &lt;VirtualHost 192.168.0.1:443&gt; 但服务器没有 192.168.0.1 地址!

【讨论】:

  • 我可以确认,这对我来说也是个问题……IP地址错误
【解决方案9】:

请参阅this link

我查看了所有 apache 日志文件,直到发现实际错误(我已将 &lt;VirtualHost&gt;_default_ 更改为我的 fqdn)。当我修复此错误时,一切正常。

【讨论】:

    【解决方案10】:

    我的问题是由于 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 interface ipv4 set interface "无线网络连接" mtu=1400

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

    【讨论】:

      【解决方案11】:

      我有一个混乱的虚拟主机配置。请记住,对于端口 80,您需要一台不带 SSL 的虚拟主机,对于端口 443 需要另一台带 SSL 的虚拟主机。您不能在一个虚拟主机中同时拥有这两种主机,就像 webmin 生成的配置试图做的那样。

      【讨论】:

        【解决方案12】:

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

        $HTTPD -k $ARGV
        

        到:

        $HTTPD -k $ARGV -DSSL
        

        希望对某人有所帮助。

        【讨论】:

          【解决方案13】:

          您也可以尝试修复 hosts 文件。

          将 vhost 文件保留在完全限定的域中,并将主机名添加到 hosts 文件 /etc/hosts (debian)

          ip.ip.ip.ip name name.domain.com
          

          重启apache2后,错误应该消失了。

          【讨论】:

            【解决方案14】:

            我在某些浏览器中访问我的 SSL 站点时遇到了同样的问题。 我发现我必须为 fireFox 提供正确的代理(FireFox 直接访问互联网)。

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

            【讨论】:

            • 一些代理对 HTTPS 请求返回一个 HTTP 错误响应,这是它不期望的(例如,如果您通过了错误的代理,或者代理配置错误)。这可能真的很难诊断,因为浏览器只会拒绝整个对话并抛出错误,而不是向您显示代理的错误消息。不过,Wireshark 可以完成这项工作。我自己也遇到了。
            【解决方案15】:

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

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2020-05-05
              • 2012-05-10
              • 2011-02-01
              • 2014-09-24
              • 1970-01-01
              • 2018-11-17
              • 2010-11-20
              相关资源
              最近更新 更多