为什么不强制全局 HTTPS 加密连接

水景一页部署 SSL 已有一年多了,使用的是 StartSSL 的免费证书。眼看着 Let’s Encrypt 项目就要正式发布,也萌发了全站强制 HTTPS 访问的想法。结果却发现这种做法对国内用户并不友好,只得作罢。

StartSSL 的免费 CA 证书有效期只有一年,到期后需要重新申请换发。前些天申请换发之后就想着可以开始强制全站使用 HTTPS 加密连接了。于是在 Apache 的配置文件里加入自动将非加密连接(80端口)自动跳转到加密连接(443端口)的跳转和重写规则,

Redirect permanent / https://cnzhx.net/
RewriteEngine on
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [NC,R=301,L]

重启 Apache 和 PHP-FPM 服务使规则生效后,刚开始还挺正常的。过两天突然发现网站访问量大幅度减少

于是到 Webkaka 上检测。检测的结果是,使用非加密连接的时候网站连通性很好,但是使用加密连接的时候,很多检测点都出现了 403 错误。

不管是由于自己配置问题也好还是由于国内的上网环境也好,目前来看对于水景一页这样的小站直接切换到 HTTPS 连接似乎不太可行。于是打消了全局强制 HTTPS 连接的念头,然后在右侧边栏顶部写了个提示,有需要的朋友可以自己切换到 HTTPS 连接

由于 Google 的响应实在太快,目前 Google 搜索结果中水景一页的条目已经全都替换成了 HTTPS 打头的地址,那也就没办法了。好在 Baidu 搜索结果中水景一页的条目基本上还都是普通非加密连接的地址。

热烈欢迎各位朋友反馈切换到 HTTPS 连接后是否遭遇无法访问的问题。请到这里留言 :D©

本文发表于水景一页。永久链接:<https://cnzhx.net/blog/reason-of-no-force-https/>。转载请保留此信息及相应链接。

9 条关于 “为什么不强制全局 HTTPS 加密连接” 的评论

    • 非常感谢!
      证书错误倒是很奇怪,因为我自己打开是没有这个的。虽然 Chrome 上面会因为安全级别不够高而显示个黄色的三角符号,但是没有错误。
      你能帮忙把那个错误证书的信息帖上来吗?

  1. 引用通告: 调整了一下 HTTPS 配置 | 水景一页

  2. 我的站点不管nginx上是否开启SSL,打开https://www.xfabs.com 都显示证书错误,而且查看一下是别人的证书很奇怪。这是为何?

    • 这个还真是好奇怪。可能得问问共享主机的管理员吧。
      我经历过的情况是,配置好一个证书后,直接去访问发现却没有加载此证书,而是同服务器上的另一个域名的证书。清空浏览器缓存等之后就正常了。你可以试试看。

雁过留声,人过留名

电子邮件地址不会被公开。 必填项已用*标注

特别提示:与当前文章主题无关的讨论相关但需要较多讨论求助信息请发布到水景一页讨论区的相应版块,谢谢您的理解与合作!请参考本站互助指南
您可以在评论中使用如下的 HTML 标记来辅助表达: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>