WordPress开启全站https的方法教程

原创 野人  2022-03-10 10:01  阅读 27 次

终于,可以写这篇文章了,因为目前本站已经用上了,这里给大家说下,在WordPress开启全站https都需要做哪些的步骤?

那么接下来大家就听我好好的讲讲喽。

1、申请SSL证书,这也是开启全站https必备的步骤,如果还不知道有哪些的SSL证书的话,可以看这篇文章《免费SSL证书都有哪些?我来推荐下。》。

2、这步要分两种情况:

①如果是虚拟空间/主机的,可以看这篇文章《给衡天主机的虚拟主机配置安装添加SSL证书教程来了。

②如果是云主机/轻量服务器/服务器这类的,根据自己服务器所使用的Web服务器做不同的配置,比如 Nginx,Apache这些也是目前比较主流的Web服务器,我都写了相应的教程,大家可以看这两篇。《Apache配置SSL证书以及http(80)永久重定向跳转https(443)的方法》和《Nginx/Tengine配置SSL证书以及http(80)永久重定向跳转https(443)的方法

3、修改WordPress相关的一些配置

①打开网站后台——设置——常规——WordPress地址(URL)和站点地址(URL)

关于WordPress地址(URL)和站点地址(URL)概念不太理解的朋友,可以看这篇文章《WordPress后台常规选项中的WordPress地址(URL)和站点地址(URL)有什么区别?》,这也是为后续开启全站SSL做好准备,因为开启SSL了,浏览器规定https的站点中是不能包含http的内容。

②替换文章内容中的旧的站点(http)为新的站点链接(https)这样才能实现全站SSL,原因同上,有两种方法。

法一:利用WordPress的自带的文章内容过滤钩子,将以下的代码复制到自己当前所使用的主题下面的function.php文件?>之前。

/**
 * 替换文章中的https和http为//
 */
function replace_url_http_and_https($content)
{
	preg_match('/\/\/(.*)/', site_url(), $url); //匹配站点的域名
	$pattern = "/http:\/\/{$url[1]}|https:\/\/{$url[1]}/";
	return preg_replace($pattern, "//{$url[1]}", $content);
}
add_filter("the_content", "replace_url_http_and_https");

关于为什么替换成//,有兴趣的朋友,可以看这篇文章《在WordPress中使用//(缺省协议)代替http(s)://有什么好处?》。

法二:直接使用数据库SQL语句替换(如果使用你该方法,一定要注意提前备份和将下方中得以域名替换成自己的站点!!!

update wp_posts set post_content = replace(post_content, 'http://自己的站点域名','https://自己的站点域名');

4、搜索引擎相关的,开启百度站长工具的HTTPS认证(其他的搜索引擎如有该功能,也记得开启),以免影响收录的情况。

其他注意事项

SSL证书,一般都是有时效性的,像本站用的七牛云是免费一年的,所以续费的话(还是免费),但是要记得提前,要不然会导致网站打不开哦。

开启全站的SSL后,还是要检查下站点的链接是否都是https,像一些插件生成出来的链接不是https,所以这块也是需要注意的。

参考文章

https://www.ithmz.com/ssl.html

http://ityouzi.com/archives/word-press-https-method.html

本文地址:https://www.yerenwz.com/5860.html
版权声明:本文为原创文章,版权归 野人 所有,欢迎分享本文,转载请保留出处!

发表评论