目前使用Chrome浏览器访问未启用SSL的站点会提示“网站不安全”的标识,另外,如果网站不启用SSL加密,访问时黑客很轻松的就能窃取到登录者的用户名和密码,为了保障用户的安全以及网站自身的安全,给网站开启全站HTTPS访问是非常有必要的。
一、将站点域名改为https
登录Typecho后台 -> 设置 -> 基本设置 -> 站点地址改成https://www.xxx.xx (xx改为你自己的域名)。
二、修改Typecho站点根目录config.inc.php
下的文件
加入下面一行配置,否则网站后台还是会调用HTTP资源
/** 开启HTTPS */
define('__TYPECHO_SECURE__',true);
三、由于Chrome浏览器对HTTPS要求较高,Firefox已经显示小绿锁,可是Chrome还是有警告提示,F12查看,评论表单的action地址还是HTTP,找到站点主题目录下的comments.php
文件,搜索$this->commentUrl()
将其替换为:
echo str_replace("http","https",$this->commentUrl());
四、更新文章中引用的附件地址为 HTTPS 地址,执行SQL数据库操作
以本站为例,将下面的代码复制到数据库中执行
UPDATE `typecho_contents` SET `text` =replace( `text`,'https://www.1crh.cn','https://www.1crh.cn')
//链接替换为自己的网站 写入数据库。
//typecho_contents为表名,text为字段名。
//注意:域名最后不要添加“/”这个字符
五、通过301重定向强制HTTPS访问
以上的操作完成后,发现还能以HTTP的方式还是可以访问,我们可以通过WEB服务器(Ningx)将80端口(HTTPS)重定向到443端口(HTTPS);虚拟主机在控制面板中的网站重定向中(不同面板名称可能不同)设置,强制全站HTTPS。
如果你使用的了CDN的话 在CDN加速模式跳转,设置http跳转https。
六、将typecho获取头像的地址为https
将var/Typecho/Common.php文件中第939行中的http://www.gravatar.com
中的http改成https就好了。
最后在浏览器访问你的网站,你就会看到一个小绿锁的出现,预示着大功告成了!
Comments | NOTHING