WordPress 5.x + cloudflare 开启SSL

Cloudflare大家应该都不陌生,是国外一家比较有名的CDN厂商,国内百度云加速也和其达成合作关系,使用了其部分节点和相关技术,这篇文章讲一下老WP博客如何开启SSL全站访问,以及访问强制跳转SSL。

为什么要用Cloudflare来做呢? 它便宜而且SSL免费,客服说话又好听,对中国访问也不差有什么理由不用呢?

在当今各种引擎对SSL站非常友好的情况下,我不能拖大家后腿啊,

必须用起来。

老Wordpress博客全站启用SSL思路如下,

1、首选要解决站内链接问题,不能盲目启用SSL会造成无法访问。

2、确保使用最新的wordpress 5.0以上版本的wordpress程序

3、这是最后一步也是成功的关键,开启SSL访问并永久定向。

下面我们开始正题

首先,我们在cloudflare里面开启SSL功能,这样我们的站就可以http以及https同时使用了,什么?不知道cloudflare能不能吃?这个cloudflare的教学不在本文章内阐述,我用一个图片告诉大家SSL功能在哪里。
    在cf里选中自己的域名,找到 crypto 选项卡内的 ssl 项,选择 flexible 模式,关于四个选择有什么区别,点击此功能的 help ,cf官方有详细说明。

    在http和https能同时访问的情况下,我们开始整理我们站内的链接,老博主都知道以前写文章喜欢用图片直链的形式,那么数据库中这么多直链图片和直链媒体文件怎么替换呢?不用着急,我们来修改数据库,这需要用到数据库管理软件phpmyadmin,这个软件应该连新手都知道。 为了保证WordPress站点之前添加的各个链接或者多媒体文件把http协议改成https协议,我们还需要通过数据库SQL查询执行一条替换命令,代码如下:(使用时请按照自己数据库表名(wp_posts)和网站域名修改后在执行即可。)
替换前请备份数据库,在phpmyadmin中找到对应表,打开 运行SQL查询 选项卡,输入改好的命令,点击执行进行替换
update wp_posts set post_content = replace(post_content, 'http://xxbin.com','https://xxbin.com');

在phpmyadmin中进行语句查询替换

    现在我们已经成功一半了,暂时先用https访问,看看源代码里的css js 以及统计代码广告有没有站外连接如果有请替换成https引用的源码,如果对方不提供https将连接由http://xxbin.com/1.jpg,替换成//xxbin.com/1.jpg。完成了这些操作确保SSL下我们的blog站点没有问题了,就可以开始最后一部固定 SSL (https) 连接访问操作了。
注意的是友情连接 href=”http 这个不需要处理,我们只需处理站内引用媒体或者js/css的引用类型连接

在wordpress5.0以前,我们需要修改下wp-config.php配置文件,在文件末尾增加

/* 强制后台和登录使用 SSL */
define('FORCE_SSL_LOGIN', true);
define('FORCE_SSL_ADMIN', true);/

  • 开启强制SSL访问,两个方法非常简单。这里我们建议挑一个做既可
  • 方法1:cloudflare里面的 Always Use HTTPS,此功能依旧在前面 crypto 选项卡内。
  • 方法2:wordpress后台,设置 – 常规选项 – 将wordpress地址和站点地址加上https既可,如下图。

发表评论