use*_*178 10 http https web-server .htaccess apache-2.2
我曾经用SSL证书运营过一个网站,但已经停止使用SSL证书。问题是网站的大部分外部链接都使用 https:// 前缀。
我在 .htaccess 文件中尝试了 https:// 到 http:// 重定向:
RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI}
Run Code Online (Sandbox Code Playgroud)
但是,正如其他地方指出的那样,服务器似乎在激活重定向之前尝试检索证书。因此,在完成重定向之前会显示错误。该错误要么是证书已过期的警告,要么是我删除了证书签名请求,然后是 SSL 收到超过最大允许长度的记录的错误。
有什么办法可以让传入的链接正确重定向?
小智 18
http 和 https 的区别在于 https 请求是通过 ssl 加密的连接发送的。在浏览器发送http请求之前,浏览器和服务器之间必须建立ssl加密的连接。
Https 请求实际上是通过 ssl 加密连接发送的 http 请求。如果服务器拒绝建立 ssl 加密连接,那么浏览器将没有连接来发送请求。浏览器和服务器将无法相互交谈。浏览器将无法发送它想要访问的 url,服务器将无法响应重定向到另一个 url。
所以这是不可能的。如果要响应 https 链接,则需要 ssl 证书。
小智 5
不,如果没有真正的证书就可以从 https 重定向到 http,这将是一个重大的安全缺陷。
假设犯罪分子能够以某种方式使银行安全服务器重定向到不安全的连接,而不需要该网站的真实 https 证书,这将允许犯罪分子在用户不知情的情况下劫持连接。
我能看到的唯一解决方案是获得一个便宜的证书,然后从 HTTPS 站点(用户在没有有效证书的情况下无法访问)正常重定向到这些外部链接的常规站点。
归档时间: |
|
查看次数: |
39090 次 |
最近记录: |