作者:Saury
链接:https://qiudy.cc/182.html/comment-page-1
来源:https://qiudy.cc/

从2017年1月起,使用谷歌浏览器访问未启用 HTTPS 的站点,地址栏将会有“不安全”的标记
所以,给博客全站开启 HTTPS 也是大势所趋!

1.登录Typecho后台 -> 设置 -> 基本设置 -> 站点地址改成https的域名是必须的。

2.编辑Typecho站点根目录下的文件config.inc.php

加入下面一行配置,否则网站后台还是会调用HTTP资源。登录后台的时候会出现奇怪的错误

/** 开启HTTPS */define('__TYPECHO_SECURE__',true);

3.由于Chrome浏览器对HTTPS要求较高,Firefox已经显示小绿锁,可是Chrome还是有警告提示,F12查看,评论表单的action地址还是HTTP,找到站点主题目录下的comments.php文件,并搜索$this->commentUrl(),将其替换为:echo str_replace("http","https",$this->commentUrl());,最后保存。

4.更新文章中引用的附件地址为 HTTPS 地址,执行SQL数据库操作:

UPDATE !typecho_contents SET! !text! = replace (!text!,’http://qiudy.cc','https://qiudy.cc‘)

将以上 ! 替换为 `

链接替换为自己的网站 写入数据库。
typecho_contents表名text字段名

5.但是这样HTTP的方式还是可以访问的,我们可以通过WEB服务器(Ningx)将80端口(HTTPS)重定向到443端口(HTTPS),强制全站HTTPS。
如果你使用的了CDN的话 在CDN加速模式跳转,设置http跳转https。

6.后来发现typecho头像是从gravatar获取的,但是typecho获取头像的地址为http
所以将var/Typecho/Common.php中的第939行中的http://www.gravatar.com/中的http改成https就好了。

Last modification:February 18th, 2020 at 11:36 am
如果觉得我的文章对你有用,请随意赞赏