备份
文件备份
直接把wordpress整个文件夹再拷贝一份就行了,也很快。
数据库备份
安装phpmyadmin
#安装
sudo apt install phpmyadmin
#链接软件链接到
sudo ln -s /usr/share/phpmyadmin/ /usr/share/nginx/html/phpmyadmin
然后再去nginx配置一下,能够显示出界面
刚登陆发现报错,报错Warning in ./libraries/classes/Config.php#1761 mkdir() permission denied
去/var/lib/phpmyadmin,把权限拉满
sudo chmod -R 777 tmp
进入界面登陆,登陆的账户和密码是mysql的账户密码。
然后进行导出,导出就很简单,直接选中数据库,进行整个导出就完事了。

安装备份插件
这里我用UpdraftPlus,排名第一的备份插件,挺简单的,设置一下备份到邮箱即可了,反正邮箱的容量是无限大的。
升级(手动)
为什么手动升级呢?因为国内的环境懂得都懂,不懂得说了你也不明白,因此我们需要手动更新。
参考网址:https://www.wuqintai.com/archives/1641.html
**第一步:**备份数据(网站源码 + 数据库),便于操作失败后还原。
如果你的服务器自持打快照,可直接创建一个快照。
**第二步:**从 官网(中国) 下载最新版 WordPress 源码。下载方式,可使用 SSH 工具登录到网站服务器,然后通过 wget 工具进行下载,如:
# 如下载当前最新的 5.8 版:
wget https://cn.wordpress.org/wordpress-5.8-zh_CN.tar.gz
**第三步:**解压 WordPress 源码压缩包,获得源码。
tar -zxvf wordpress-5.8-zh_CN.tar.gz
**第四步:**删除新版源码包中的 wp-content 文件夹及其子文件。
说明:至于为什么要删除,第六步有说。
**第五步:**比对新版源码与旧版源码的相关权限、属主和群组信息,并将新版源码的这些信息改成与旧版源码的一样。
# 相关操作指令
# 1、查看文件信息
ls -lh
# 2、修改权限信息指令
chmod -R 权限信息 目标文件/文件夹 # -R:表示递归传递
# 3、修改属主信息指令
chown -R 属主名称 目标文件/文件夹 # -R:表示递归传递
# 4、修改群组信息指令
chown -R 群组名称 目标文件/文件夹 # -R:表示递归传递
chmod -R 744 wordpress
chown -R ubuntu:ubuntu wordpress
第六步:将新版源码复制到原网站的根目录,替换 所有重复的旧版源码文件。
cp -r wordpress /usr/share/nginx/html
注意:执行此步前,一定要确保已经将新版源码中的
wp-content文件夹删除。
为什么要提前删除呢?
该目录主要存放的是 WordPress 运行中用户新增的一些数据。如主题、插件、用户写文章时上传的图片等数据,因为原网站已经存在着使用中的数据,因此不能删除或直接替换这些数据。
第七步:再次访问(登录) WordPress 网站管理后台,此时会提示更新数据库,根据向导提示完成操作即可,自此更新完成!
日志
安装WP Activity Log插件,然后自行设置一下。
在安装Website File Changes Monitor,监控文件改动。
优化
参考网址:https://zhuanlan.zhihu.com/p/339126970
挺重要的,时间一下子缩短了不少,强烈建议优化!!!!!!!
Memcached
和 PHP Memcached 扩展,参考:使用 Memcached 来缓存 WordPress 数据。
#先安装ssl开发库
sudo apt-get install libssl-dev
然后安装Libevent这个库,
参考网址:https://blog.csdn.net/u014636209/article/details/82141729
wget https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz
#下载后解压
tar -zxvf libevent-2.1.12-stable.tar.gz
sudo mkdir -p /usr/lib/libevent
cd libevent-2.1.12-stable
./configure -prefix=/usr/lib/libevent
make
sudo make install
最后去安装Memcached 库,http://memcached.org/downloads
wget http://memcached.org/latest
tar -zxvf memcached-1.x.x.tar.gz
cd memcached-1.x.x
./configure --with-libevent=/usr/lib/libevent && make && make test && sudo make install
后台服务启动
- -d是启动一个守护进程;
- -m是分配给Memcache使用的内存数量,单位是MB;
- -u是运行Memcache的用户;
- -l是监听的服务器IP地址,可以有多个地址;
- -p是设置Memcache监听的端口,,最好是1024以上的端口;
- -c是最大运行的并发连接数,默认是1024;
- -P是设置保存Memcache的pid文件。
/usr/local/bin/memcached -d -m 512M -u root -l 127.0.0.1 -p 11211 -c 1024 -P /tmp/memcached.pid
#查看进行
ps -ef|grep memcached
还要记得开机启动,我重启了之后变得很慢,我还以为CDN的问题,回头看优化,发现这个没开,没想到这个提升巨大,巨tm大!
直接在/etc/rc.local里面加上上面的启动语句就行了。
接下来参考这个 https://blog.wpjam.com/article/wordpress-memcached/
Mysql Query cache
查看开启了没有
show variables like '%query%';
在/etc/mysql/my.cnf,加入以下的句子([mysqld]这个也需要加,因为原来里面没有)
[mysqld]
query_cache_size = 32M
query_cache_type = ON
然后重启一下
sudo systemctl restart mariadb
然后缓存使用情况
show status like 'qcache%';
缓存插件
安装Super Cache。
SEO
没啥需求,只希望自己的push-markdown这篇文章能够被检索到,所以就只使用WPJAM中的拓展插件,简单设置一下SEO,希望能被百度检索到,垃圾CSDN,一样的题目都不能被检索到。
百度站长
也是用WPJAM的拓展插件,希望能被百度收录吧,由于本网站屏蔽了海外节点,所以不会被谷歌收录。
访问统计
用了WPJAM的百度统计,但是我edge的adblock插件会屏蔽百度统计的js脚本,所以感觉这个可能不太行,于是下了WP Statistics这个插件,看看是什么效果。
WP Statistics启用GeoIP这个功能,需要下载数据库,由于垃圾腾讯云日常连不上外网,需要自己手动下载或者更换镜像源
grep -nr raw.githubusercontent.com
然后会有两个链接
https://raw.githubusercontent.com/wp-statistics/GeoLite2-Country/master/GeoLite2-Country.mmdb.gz
https://raw.githubusercontent.com/wp-statistics/GeoLite2-City/master/GeoLite2-City.mmdb.gz
一个国家的,一个城市的,可以替换成CDN的链接。
'source' => 'https://cdn.rosm.cn/GeoLite2-Country.mmdb.gz',
'source' => 'https://cdn.rosm.cn/GeoLite2-City.mmdb.gz',
或者手动下载到/wp-content/uploads/wp-statistics/里面。
两个方法都只能凑合吧,一个是能够更新geoip的数据库,但是我估计更新完插件之后代码就会被覆盖掉,所以还需要再修改一遍,也有点麻烦,或者下载完geoip的数据库,之后不更新了,反正也大差不差吧。
然后访客IP设置为HTTP_X_FORWARDED_FOR。





