【问题标题】:https showing error ERR_SSL_PROTOCOL_ERRORhttps 显示错误 ERR_SSL_PROTOCOL_ERROR
【发布时间】:2020-11-22 00:51:32
【问题描述】:

我已成功设置 ssl 我无法将 http 请求重定向到 https 我试过了:https://aws.amazon.com/premiumsupport/knowledge-center/redirect-http-https-elb/ 来自 aws 文档,但没有用。

我尝试了其中一个 SA 答案并添加了

<VirtualHost *:80>
 ServerName www.onepercent.club
 Redirect / https://www.onepercent.club/
</VirtualHost>

<VirtualHost *:443>
  ServerName www.onepercent.club
</VirtualHost>

我在 /etc/httpd/conf 的 httpd.conf 文件中添加了这段代码 现在对 http 的请求被重定向到 https 但显示错误说 ERR_SSL_PROTOCOL_ERROR 请帮我解决这个错误

SSL 证书设置完美,当我手动输入 https 时可以正常工作。我只在重定向时遇到问题。 我在 AWS EC2 t2.micro 上托管它,我的 SSL 来自 GoDaddy

编辑

SSL.conf

<VirtualHost _default_:443>
 ServerName www.onepercent.club
 SSLEngine on
 SSLCertificateFile SOMEPATH
 SSLCertificateKeyFile SOMEPATH
 SSLCertificateChainFile SOMEPATH
</VirtualHost>   

httpd.conf

<VirtualHost *:80>
 ServerName www.onepercent.club
 Redirect / https://www.onepercent.club/
</VirtualHost>

【问题讨论】:

  • 如果您使用 ELB,您能否在负载均衡器级别设置 ssl 并在负载均衡器处终止 SSL。实例将始终以 http 形式接收请求。是否有特殊原因要在实例级别终止 ssl
  • 我用负载平衡尝试了几个小时,我知道问题是什么,我无法将负载平衡附加到实例。这就是我尝试使用代码@ArunK 实现这一目标的原因

标签: amazon-web-services http redirect amazon-ec2 https


【解决方案1】:

ERR_SSL_PROTOCOL_ERROR 是因为您尝试使用 HTTPS 在 HTTPS 端口 (443) 上进行连接。但是,您的主机正在侦听 443 作为标准 HTTP 请求。

要解决此问题,您的虚拟主机应配置为运行 SSL。

这可以通过将最小 SSL configuration 添加到主机 a 来完成,如下所示。

<VirtualHost *:443>
  ServerName www.onepercent.club

    SSLEngine on
    SSLCertificateFile "/path/to/www.example.com.cert"
    SSLCertificateKeyFile "/path/to/www.example.com.key"
</VirtualHost>

【讨论】:

  • 这将位于您的 https 域的虚拟主机中(侦听端口 443 的虚拟主机)。
  • 我已经有了这个代码。它包含证书文件、私钥和链的路径
  • 你有完整的 VHOST(删除敏感信息)
  • 嗯,这看起来是正确的,测试似乎没有执行您提到的重定向。你禁用了吗?
  • 我怎么能禁用它?喜欢代码中的任何部分吗?
猜你喜欢
  • 2020-04-19
  • 2020-07-20
  • 1970-01-01
  • 1970-01-01
  • 2017-01-22
  • 2013-04-14
  • 2019-08-19
  • 2018-07-25
  • 2013-10-10
相关资源
最近更新 更多