WordPress教程合集

前言

这篇文章将讲述WordPress的安装,设置,使用,优化,以及可能的一些高级操作。

文章将慢慢更新,h2标题我将预先设定以帮助构思。

让我们开始吧

对了,实测下来图片比较多,最好打开后等一会。

安装

准备

WordPress is both free and priceless at the same time.

WordPress 是免费,且无价的。

我们需要一台服务器,至于为什么我就不多赘述了。当然,也有一些不用服务器的方式,比如托管什么的,但是我并不喜欢。我更喜欢直接接触到底层,毕竟有一些东西必须是自己服务器才能改。

至于服务器,我建议买个国外的,毕竟国内的毕竟麻烦,备案什么的我们也用不着,毕竟你真的要赚钱的话早就备案了,到时候买在国内也不迟,关键是一些源在国内访问得掉出渣来了。

这里的话我想来想去,没什么特殊用途的话在阿里云买个香港的轻量服务器即可,这样国内访问也不算慢。如果你需要加装CloudFlare的CDN的话那买在美国比较好。这一点是后话了,后面会说,反正不建议买国内就是了。如果有什么要问的,留下评论即可。

还有,博客最好要个域名,这里我推荐Namesilo,因为这家是真的便宜,而且域名隐私什么的都送的,还有,续费同价!

环境

我们需要在服务器上安装PHP,Nginx,MySQL等组件,手动来安装不仅麻烦,而且容易搞错,管理又是要命的事,所以我们需要一个图形化的管理面板。

安装宝塔面板

系统准备

买回来的服务器,或者买服务器的时候,会让你选系统,这里其实没什么严格的要求,我个人喜欢Centos8。这里就拿Centos7做演示以及教程。因为亚马逊Lightsail没有8的模板。

我们要链接到我们的服务器才能进行操作,一些云大厂提供了在线的命令行,不过我们还是推荐使用ssh客户端进行链接,这里推荐使用Finalshell。

https://www.hostbuf.com/t/988.html

本来不想做演示的,但一想还是做一下比较好,我就勉为其难地在亚马逊上开一个服务器吧。有一说一,亚马逊的Lightsail还是不错的,尤其是配上一些特殊方法。。

首先开通一台服务器

可以看到,我这里选择了配置稍微好一点的服务器,1GB的内存是我推荐的最低值。

至于CPU,AWS的CPU又令人一言难尽,计算点用完之前比什么都牛。

好了,我们创建完毕之后就可以看到大概的信息了,最上面那个是我们这次演示要用的。

其实我们此时已经可以访问服务器了,比如点击那个命令行按钮之后。

不过我们推荐使用ssh软件,我们接下来需要找到ssh的信息。分别是,IP地址,端口,和认证信息。

点开了之后我们就可以看到具体的信息了,这里有一个要注意的东西叫安全组。一般云大厂都有这个东西,科学的使用可以增加服务器的安全性。但是有东西要操作的时候记得放行对应的端口什么的,不然到时候莫名其妙不对。实在不会的话就全部放行吧。

找到内容之后我们就可以填入ssh软件了,AWS的Lightsail默认的是使用key证书验证,一般的服务器是密码,怎么说呢,证书的安全性高一点,但是有一点点麻烦。这里把它导入FinalShell然后选中就行了。默认用户是centos,每个服务器可能都不一样,看情况。不过我们要的是root用户,如何操作后面会说。

好了,可以看到我们已经成功连接上我们的服务器。有时候服务器连不上,具体问题可能要具体看。可能是服务器在装系统还没好,也有可能是IP被封锁,有可能是防火墙端口没开或者端口有误什么的。

开始安装

宝塔官方提供了脚本,这大大减少了我们的工作。

https://www.bt.cn/download/linux.html

官方提供了以下脚本

#Centos安装脚本
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
#Ubuntu/Deepin安装脚本
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh
#Debian安装脚本
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh
#Fedora安装脚本
wget -O install.sh http://download.bt.cn/install/install_6.0.sh && bash install.sh

选择对应的复制到你的命令行。

这里我是centos

不过需要注意的是,命令需要在root用户下运行,而我们之前并不是root用户。所以我们需要先切换成root用户,运行以下命令。

sudo su

不过有时系统比较蛇皮,这样运行没用,这时我们需要这个命令

su - root

好,我们开始安装。

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

可以看到,已经开始安装了。

可以看到它问我们要不要安装宝塔面板,我们输入y且回车以确认。

好,现在正在安装,看上去是通过yum在安装一些包,我们等一会即可。

保存信息

好,宝塔面板已经安装完成,可以看到链接,密码,账号等信息已经输出。我们需要稍作保存。

建议学习我,东西要好好整理。

安装环境

有了宝塔面板的帮忙,接下的工作会很简单。

我们先看一眼宝塔面板的信息,可以看到要访问IP地址加8888端口。

需要注意的是,也是安装程序提醒我们的,

黄色部分告诉我们要放行端口,系统内的端口放行宝塔安装程序已经帮我们完成了,但是还记得一开始演示服务器的那个防火墙吗?我们要在那里放行8888端口才能使用我们的宝塔,不然请求都被阻挡了。

放行安全组

打开我们的控制台,点开对应的的实例。

自定义,协议为TCP,端口为8888,允许任何IP,然后保存。

链接宝塔面板

接下来我们就可以干正事了,输入链接信息到浏览器。

登入。

我们需要阅读协议,阅读完成,点击进入面板。

部署

不一会就会蹦出来这玩意,我们就选择LNMP,最新的即可,MySQL因为高版本对内存要求比较高,面板建议我们选择这个版本,也是没有问题的。

个人喜欢选择编译安装,也就是下载源码然后编译,虽然时间久一点,但是性能和稳定性方面会更好一点。至于极速安装,就是从Linux的软件商店下载对应的发行版本。

如果不小心关掉也无妨,继续看下去。

宝塔貌似自从上次爆出漏洞之后要求我们绑定账号以供提醒保证安全,我们这里绑定一下,没有的话注册一个。

可以看到,已经开始安装了,这一步耗时比较旧,可以先去喝一杯茶。

在我喝茶的时间里,我来说一下如果你不小心关了之前那个询问安装环境的窗口的话要怎么办。其实我们只要去软件商店里下载对应的软件也是一样的。

时间真快,我们来到软件商店看看,这些就是我们的软件包,缺了什么的可以手动下载一下,用上面的搜索功能会比较快。

源码

准备操作都差不多结束了让我们开始部署源码吧,源码是网站的运行程序。

下载源码

这里我提供了WordPress的源码下载。

在此之前,我们先要创建个网站。比如按这样操作,域名我们就拿个做示范。

建议数据库在这一步就创建一下,之后创建也不方便。

创建完毕,我们为了方便操作就把数据库信息复制一下。

进入网站目录了,这些都不要用,所以我们把他们都删除。

.user.ini 这个文件一次删,可能看上去删不掉,其实只要再点击一下它右边的删除就行了。

这里我们就要上传源码了,我们可以选择下载了源码再上传,不过我们为了省事加上快速,直接通过远程下载功能下载。下载地址是这个

https://doc.cukee.cc/wp-content/uploads/2020/10/wordpress-5.5.1.zip

可以看到下载速度还是非常快的,不一会就下完了。

安装源码

我们点击下载的压缩包边上的解压后,再点开解压出的文件夹。里面便是WordPress的源码,我们选择全部,然后点击剪切。

返回到我们网站根目录,如图。然后粘贴我们剪切的东西,完成之后我们把留下的压缩包和解压的文件夹给删除。

这步其实应该之前操作的,那就是解析域名到你的服务器。

我们添加一个A记录到我们的服务器,因为我的域名托管在CloudFlare所以看上去界面有那么一点诡异,本质上是差不多的。

等几分钟让域名解析生效,如果你的DNS比较烂,可能会比较久。

然后,激动人心的时刻到了,访问你的网站,安装界面出现了。

安装网站程序

在上一步,我们选择了语言,接下来WordPress提示了我们所需的内容等基本信息。

接下来要求我们连接数据库,我们填入数据库的信息即可,如果当时没把数据库信息记下来,也可以到宝塔面板的数据库页面查看。

好,数据库设置完成了,继续下一步。

这里需要填写一些Blog的基本信息,我们就填写一些做演示。

在登入界面使用你设置的信息登入即可使用WordPress,安装到此完成。

#累死我了,这个教程怎么才写了这么一点啊啊啊啊。

设置

伪静态/重写

万里长征第一步算是完成了,接下来我们来看一些基本设置。

也许你想改变一下固定链接的样式,这时我们需要设置一下Nginx的伪静态和重写,不然的话会出错

同时,伪静态也可以提升网站的性能。

打开宝塔的网站页面,点击设置。在站点修改页面中找到伪静态,选择默认提供的模板–wp2。

配置文件如下,供参考。

rewrite ^.*/files/(.*)$ /wp-includes/ms-files.php?file=$1 last;
if (!-e $request_filename){
	rewrite ^.+?(/wp-.*) $1 last;
	rewrite ^.+?(/.*\.php)$ $1 last;
	rewrite ^ /index.php last;
}

这里省事就直接选择宝塔提供的模板,然后保存。

这样我们就可以放心设置了。

优化

恭喜,到这里WordPress已经可以正常工作了。

不过并不是非常完美,我们要稍微进行亿点优化。

PHP组件

打开WordPress首页的站点健康状态。

访问网站健康页面。

可以看到,一些官方推荐的组件我们没有安装,这或多或少会影响我们的性能或者一些功能。

我们接下来需要安装这些组件。

找到软件页面的PHP,点击设置。

在安装扩展一栏找到我们要的三个扩展,

imagemagick
fileinfo
exif

并安装。

过一会后回到消息页面,可以看到都安装成功了。值得一提的是fileinfo推荐要1G内存,不然可能安装失败,这也是我推荐买一个好一点服务器的原因。

回到站点健康状态页面并刷新,可以看到,组件的警报已经消失了。

定时任务

WordPress自带的定时任务是基于每次访问的。举个例子,一个用户访问一下网页,访问时会运行一下

wp-cron.php

这个文件。这就导致了一些问题。比如大流量访问时,这个定时任务就会不停执行,,然后把性能耗尽,或者是没人访问导致定时任务无法执行。

进入宝塔面板,打开网站的根目录,找到

wp-config.php

打开后在40行左右的位置加入这一串代码。

/** Disable WordPress default Cron. */
define('DISABLE_WP_CRON', true);

代码的第一行是注释,方便我们理解,第二行就是关闭自带的Cron。

保存完毕之后我们到宝塔面板的计划任务选项,添加一个计划任务。

Shell脚本,可以命名为WordPressCron,15分钟执行一次,内容为

php -q /www/wwwroot/你的网站/wp-cron.php

这里的话就是

php -q /www/wwwroot/wordpresstest.cukee.cc/wp-cron.php

改成你自己的就行。

保存。

Redis 缓存

众所周知,数据都存在数据库里面。

当访问量比较大的时候,或者操作比较复杂。比如你的网站希望读者可以注册,而且可能还有签到什么的功能,这样数据库会被频繁访问,写入。

然而,数据库是存在硬盘上面的,SSD倒还好,因为随机读写能力比较强。如果是HDD或者是云大厂的硬盘,那IO性能就别提了。

Redis是一个基于key的数据库缓存软件。

Wikipedia

Redis (/ˈrɛdɪs/; Remote Dictionary Server) is an in-memory data structure project implementing a distributed, in-memory key-value database with optional durability. Redis supports different kinds of abstract data structures, such as strings, lists, maps, sets, sorted sets, HyperLogLogs, bitmaps, streams, and spatial indexes. Salvatore Sanfilippo mainly develops the project and, as of 2015, is sponsored by Redis Labs. It is open-source software released under a BSD 3-clause license.

维基百科

Redis是一个使用ANSI C编写的开源、支持网络、基于内存、可选持久性的键值对存储数据库。从2015年6月开始,Redis的开发由Redis Labs赞助,而2013年5月至2015年6月期间,其开发由Pivotal赞助。在2013年5月之前,其开发由VMware赞助。根据月度排行网站DB-Engines.com的数据,Redis是最流行的键值对存储数据库。

也就是PHP与MySQL之间多了个人,第一次请求时,数据从MySQL调用,然后Redis便记了下来,存在内存里,下次访问一样东西的时候就直接通过内存提供。内存的性能相较于硬盘可是神一般的存在。

我们先去宝塔的应用商店安装Redis。

使用Redis我们还需要安装PHP扩展,我们在软件商店里找到PHP,点开设置,在安装扩展中找到redis并安装

好,两个东西都在安装,我们等一会。

在等待Redis安装的这段时间里,我们也顺便把宝塔的系统监控打开,方便我们看看负载什么的,也方便检视变化。

现在我们回到WordPress,选择插件,安装插件,搜索Redis。第一个便是,Redis Object Cache。

安装完成之后我们需要激活它,进入插件,已安装的插件,激活Redis Object Cache。

然后点击Setting,进入插件的配置。

点击里面的Enable,然后就是这样的一些基本信息,说明成功了。

这里我们还要在

wp-config.php

中43行左右加入以下的代码以设定缓存的salt。这可以防止在有多个站点时Redis缓存串味。

/** Redis Cache Key Salt. */
define('WP_CACHE_KEY_SALT', '你的网站');

这里的话就是

/** Redis Cache Key Salt. */
define('WP_CACHE_KEY_SALT', 'wordpresstest.cukee.cc');

同样的,第一行为注释。

缓存

WordPress默认是动态页面,这导致加载速度有限,我们需要安装一些插件来加速它。

至于插件,我们有很多选择,我个人因为有CDN所以就用了CloudFlare提供的插件,第三方的插件用不了也没必要了。

插件的选择非常多,新手可以直接装个 WP Super Cache,只不过性能和效果有限。

个人认为既方便又好的怕是只有WP-rocket了,这玩意还要钱,我找了个破解版,你们可以体验一下什么的。

这里我就演示一下。

在安装插件页面点击上传插件按钮,选择文件,选中下载的压缩包,然后点击现在安装。

安装完成了,启用插件。

到插件页,点开这个插件的设置。

点开显示一些对话框,比如要不要改进产品什么的,都白嫖了,就做个好人,这里选,是,允许。

右边的快速操作有一个预缓存,我们开始预缓存。

预缓存完毕。

拥塞控制算法

现在互联网中主流的通信协议是TCP,有时网络拥堵时会造成TCP拥塞,这是我们不想看到的,我们可以通过拥塞控制算法来缓这一问题。如果你买的是VPS,那么OVZ架构的是不能更换内核,安装控制算法的,请跳过。只有KVM和其他架构才行。

我们推荐Google的BBR拥塞控制算法。

这里我们使用一个一键脚本。

wget -N "https://github.000060000.xyz/tcp.sh" && chmod +x tcp.sh && ./tcp.sh

用之前要切换到root用户。

然后运行这个脚本。

wget -N "https://github.000060000.xyz/tcp.sh" && chmod +x tcp.sh && ./tcp.sh

注意,请确保你的网络比较好,不然运行到一半掉线了问题可就严重了。

保险起见我们可以安装Screen。

#Centos 
yum install -y screen
#Ubuntu/Debian
apt-get install -y screen

之后运行screen,这会开启一个新的命令行,我们在里面运行我们要的命令/脚本。

如果掉线了,连回去运行

screen -r

这样就可以回到之前的页面里而且不丢失东西。

注意,重启/关机会关闭所有SSH窗口,如果你不要那个窗口了,可以按Ctrl+D关闭,按Ctrl+A+D可以放入后台运行。

运行之后会输出这个东西

TCP加速 一键安装管理脚本 [v1.3.2.49]
更新内容及反馈:  https://blog.ylx.me/archives/783.html 运行./tcp.sh再次调用本脚本 母鸡慎用
  
 0. 升级脚本
 9. 切换到不卸载内核版本
 8. 切换到秋水逸冰BBR安装脚本
 10. 切换到一键DD安装系统脚本 自负其责 新手勿入 
————————————内核管理————————————
 1. 安装 BBR原版内核 - 5.6.15/5.7.7/5.8.14
 2. 安装 BBRplus版内核 - 4.14.129
 3. 安装 Lotserver(锐速)内核 - 多种
 4. 安装 xanmod版内核 - 5.5.1/5.7.7/5.8.15
 5. 安装 BBR2测试版内核 - 5.4.0
 6. 安装 Zen版内核 - 5.5.2/5.5.10
 7. 安装 BBRplus新版内核 - 4.14.182
————————————加速管理————————————
 11. 使用BBR+FQ加速
 12. 使用BBR+CAKE加速 
 13. 使用BBRplus+FQ版加速
 14. 使用Lotserver(锐速)加速
 15. 使用BBR2+FQ加速
 16. 使用BBR2+CAKE加速
 17. 使用BBR2+FQ+ECN加速
 18. 使用BBR2+CAKE+ECN加速 
————————————杂项管理————————————
 21. 卸载全部加速
 22. 系统配置优化
 23. 退出脚本
————————————————————————————————

 当前内核为:3.10.0-957.1.3.el7.x86_64
 当前状态: 已安装 Lotserver 加速内核 , 未安装加速模块
 当前拥塞控制算法为: cubic 当前队列算法为: pfifo_fast 

 请输入数字 :

我们推荐使用原版,输入1,回车。

等一会后内核就安装好了,我们需要重启服务器。

reboot

几分钟之后就可以连接回去了。

这时我们运行

sudo su
#切换root
./tcp.sh
#运行脚本

推荐bbr的fq队列,输入11,回车。

之后重启。

reboot

几分钟后连回服务器,可以看到,已经安装成功了。

虚拟内存

对于一些内存比较小的服务器,有时内存可能会爆炸,为了增加稳定性,我们可以设置一点SWAP/虚拟内存。

宝塔就有这个功能。

好了,到此为止,这个演示用服务器和域名就寿终正寝了。

使用

外观

外观是读者第一眼看到的东西,我们需要好好给网站装修装修。

我用的主题叫 GeneratePress

个人认为这个主题非常简洁而且轻量高效,高级版本还有很多样式,不过我们一般只要用它的免费版即可。

在自定义界面可以编辑网站上的小工具,元素,插入自定义HTML什么的,进行一点装饰和自定义。

区块编辑器

在WordPress上写文章需要使用编辑器,最初的区块编辑器用起来不太好,而且BUG极多。

经过这么多版本之后自带的古腾堡编辑器已经相当完善和舒适,已经可以完全满足我们的要求。

《WordPress教程合集》有1条评论

发表评论