将 http 重定向到 https 不好吗?

将 http 重定向到 https 不好吗?

我刚刚在我的服务器上安装了 SSL 证书。

然后,它为我的域上端口 80 上的所有流量设置重定向,以将其重定向到端口 443。

换句话说,我所有的流量现在都被重定向到该页面的http://example.com适当版本。https://example.com

重定向在我的 Apache 虚拟主机文件中完成,如下所示...

RewriteEngine on
ReWriteCond %{SERVER_PORT} !^443$
RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [NC,R,L] 

我的问题是,使用 SSL 有什么缺点吗?

由于这不是 301 重定向,切换到 后我是否会失去搜索引擎中的链接汁/排名https

非常感谢您的帮助。我一直想在服务器上设置 SSL,只是为了练习一下,我终于决定今晚就这么做。到目前为止,它似乎运行良好,但我不确定在每个页面上使用它是否是个好主意。我的网站不是电子商务网站,也不处理敏感数据;它主要是为了美观和安装它以供学习的快感。


更新问题

奇怪的是,由于 Bing 现在到处都使用 HTTPS,因此它从我的网站创建了这个截图...

在此处输入图片描述

答案1

[R] 标志本身就是一个302重定向 ( Moved Temporarily)。如果您确实希望人们使用您网站的 HTTPS 版本(提示:您确实希望如此),那么您应该使用[R=301]永久重定向:

RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [NC,R=301,L] 

A301保留你所有的 google-fu 和辛苦获得的网页排名完好无损的. 确保mod_rewrite已启用:

a2enmod rewrite

回答您的确切问题:

将 http 重定向到 https 不好吗?

当然不是。它非常好。

答案2

虽然我支持仅使用 SSL 的网站,但我认为一个缺点是,根据您的网站设计,开销会很大。我的意思是,例如,如果您在 img 标签中提供大量单独的图像,这可能会导致您的网站运行速度慢很多。我建议任何使用仅使用 SSL 的服务器的人确保它们在以下方面工作正常。

  1. 检查整个网站的内部链接,并确保如果您在链接中指定自己的域名,它们都使用 HTTPS,这样您就不会导致自己的重定向。
  2. 将您的域名更新<meta property="og:url"为使用 https 版本。
  3. 如果您<base href=再次使用,请更新以使用 HTTPS。
  4. 安装SPDY 协议如果可能的话
  5. 确保尽可能使用 CSS 图像精灵,以减少请求数量。
  6. 更新您的站点地图以指示 https 状态,以便蜘蛛随着时间的推移了解这一变化。
  7. 更改搜索引擎偏好设置(如 Google 网站管理员工具)以首选 HTTPS
  8. 尽可能将任何静态媒体卸载到 HTTPS CDN 服务器。

如果解决了上述问题,那么我怀疑您会遇到很多问题。

答案3

如果您已经设置了 https,那么您应该在网站上的任何地方使用它。这样可以避免混合内容问题的风险,如果您拥有所需的工具,为什么不让整个网站都安全呢?

关于从 http 重定向到 https,答案并不是那么简单。

重定向将为您的用户带来更多便利,他们只需输入 whateversite.com 即可重定向到 https。

但是,如果用户有时处于不安全的网络(或接近特洛伊·亨特和他的菠萝)? 然后用户将请求http://whateversite.com出于旧习惯。这是 http。这可能会受到损害。重定向可能指向https://whateversite.com.some.infrastructure.long.strange.url.hacker.org。对于普通用户来说,这看起来是合法的。但流量可能会被拦截。

因此,我们有两个相互竞争的要求:用户友好和安全。幸运的是,有一种补救措施,称为HSTS 标头。有了它,您可以启用重定向。浏览器将移至安全站点,但由于 HSTS 标头也记住了它。当用户在该不安全的网络上输入 whateversite.com 时,浏览器将立即转到 https,而无需通过 http 重定向。除非您处理非常敏感的数据,否则我认为这是大多数站点在安全性和可用性之间的公平权衡。(当我最近设置一个处理医疗记录的应用程序时,我全部使用 https 而没有重定向)。不幸的是,Internet Explorer 不支持 HSTS(来源),因此如果您的目标受众主要使用 IE,并且数据敏感,您可能需要禁用重定向。

因此,如果您的目标不是 IE 用户,请继续使用重定向,但也要启用 HSTS 标头。

答案4

哇!将 HTTP 重定向到 HTTPS 是一件非常好的事情,我看不出它有什么缺点。

只需确保您的客户端拥有正确的 CA,即可避免浏览器中出现有关证书的非用户友好的警告。

此外,您设置 Apache 重定向到 HTTPS 的方式似乎没问题。

相关内容