LMLPHP后院

LMLPHP官方网站已经全站支持HTTPS新闻

maybe yes 发表于 2016-05-08 10:55

一番折腾,LMLPHP 官方网站及本站相关站点已经完全支持 HTTPS,这样可以在复杂的网络环境中更安全的提供优质网页。关于如何实现 HTTPS,如何生成密钥,申请证书什么的,这里将不再叙述,网上有很多资料,并且随着时间的推移,慢慢的会有所不同。要实现 HTTPS 需要站长有良好的英文阅读和认真的研究精神,这些都不是难事。

来谈一谈关于全站 HTTPS 后需要注意的问题,以及网站建设需要注意的地方。

首先去除类似百度分享这样的插件,这样的外部 JavaScript 一般不支持 HTTPS,所以为了让网站能正常的 HTTPS 化,这样的东西必须去除。如果不去除的话,像 Chrome,Firefox 这些高等浏览器都直接打叉叉,导致浏览器的 HTTPS 绿色标签很难看。

关于图片连接问题,图片连接最好是本站的,如果不是本站的资源,也尽量在网站建设的时候不要明确写清使用的协议,A 标签中使用 // 作为地址前缀,这样就会跟随页面协议。如果是外站资源不支持 HTTPS,那是没有办法的,如果可以的话,下载到站内做链接。这里可以看出 QQ 的开放平台的用户头像比 Weibo 的要好,QQ 的头像是支持 HTTPS 的。图片其实不算很严重的问题,高等浏览器只是有个小小的警告,并没有打叉叉,但是微软系列的 IE 浏览器还是没有办法了,会弹出警告框。所以在特别重要的页面,必须使用 HTTPS 的登录注册页面,尽量不要犯这样的错误。

重要页面可以使用 301 来强制实现 HTTPS 跳转,但是不要犯上述错误。做前端的加载静态资源尽量使用 "//" 作为协议,不需要写明确。

关于根证书和二级域名证书。证书颁发机构颁发的一个认证域名的根证书都是一样的,免费的证书是不支持通配符的,也就是不支持不存在的域名实现 HTTPS 跳转,二级域名的数量也有限制。如果如果二级域名太多,可以多申请几个电子证书文件,不同的虚拟主机使用不同的证书来实现 HTTPS。

关于浏览器在 HTTPS 的网站页面是如何进行通讯的?使用 HTTPS 协议后,服务器会向浏览器出示证书和根证书,浏览器通过证书信息与 CA 机构进行通讯验证根证书及通用域名(common domain)是否与证书上的一致并检查是否包含当前访问的域名(当前访问的域名是否在证书覆盖的域名范围内)。验证通过后,从 CA 机构获取公钥来加密数据与服务端进行通信。公钥是申请证书的时候提供给 CA 机构的,叫做 CSR (certificate signed request)。

据说 Baidu Spider 不太喜欢 HTTPS,但是 Google Bot 会将使用 HTTPS 的站点权重提高。所以 HTTPS 重要页面一定得用,新闻什么的就没有特别的必要啦。

https://lmlphp.com

https://www.lmlphp.com

https://blog.lmlphp.com

https://lmljs.lmlphp.com

LMLPHP,可爱滴WEB开发框架

2017-09-24 00:19:39 1506183579 0.006055