缘由
WordPress网站用久了总不免有一身毛病。尤其是在国内运营商的神奇网络环境下(插件各种连不上网、更新失败、就连WordPress本体也经常更新不了),经常会使本地文件变得一团糟。这个时候懒得一个个问题去解决并且有强迫症无法忍受弹窗报错的博主就决定重装一遍网站,并祈祷所有问题神奇地消失。但是重装网站的同时又不想把整个lnmp环境给重装了,于是就有了这篇文章。
步骤
备份
网站数据:
- 安装
All-in-One WP Migration
插件 export to file
- 将备份文件保存至本地
配置文件(可选):
如果不打算更改数据库/ftp/密钥信息的话,可以将wp-config.php
下载至本地,待会装wp的时候就不用自己再改一遍了。
注:Xshell下载/上传文件/文件夹的办法
上传:进入目标文件夹下,将文件拖进Xshell窗口即可。可以看到Xshell是通过ZModem协议进行传输的,自动调用了rz命令。
下载:进入目标文件夹,使用sz <filename>
命令,然后从弹出的窗口中选择下载位置即可。
如果提示没有xxx命令,说明没有安装相关软件。这时使用:sudo apt-get install lrzsz
命令即可安装。
使用这个办法下载/上传文件夹的时候建议先将文件夹打包,防止传输过程中丢失文件。
全站备份:
一般主机供应商(如瓦工)会提供快照服务,备份一下,万一搞挂了也可以无脑救回来。建议安装/编译完一些软件,测试可用后就备份一下,省的又得从新编译,浪费时间。
删库然后重新建库
把WordPress 的所有文件删干净,然后把连接的数据库整个删掉。
博主用的是lnmp.org做的一键安装环境,删库建库超方便,还顺便把用户给你配置好了。只需要输入下面的命令,然后按提示操作即可。
lnmp database del #删库
lnmp database add #建库
删除WordPress文件
找到网站所在文件夹,直接进入目录删除所有东西即可。路径一般为:/home/wwwroot/域名/
。
注:有一个叫.user.ini的文件可能会删不掉,需要用chattr
命令处理一下。
rm -rf *
重新安装WordPress
确认没有东西剩下来后,还是在刚刚的文件夹下,正常安装就OK。步骤就是下载文件、解压、把刚刚下下来的wp-config.php
给扔进网站文件所在目录(上面已经讲过了上传文件的办法)。
注:所有文件必须在域名目录下面,不然打开网址会看到文件索引而不是网站内容。
# 安装前准备
wget https://wordpress.org/latest.tar.gz && tar -xzvf latest.tar.gz
mv wordpress/* . && rmdir wordpress
chmod -R 755 *
chown -R www:www *
# 进入网页完成安装后
cd ..
find 域名 -type d -exec chmod 755 {} \;
find 域名 -type f -exec chmod 644 {} \;
chown -R www:www 域名
还原
进入后台的插件管理页面,安装All-in-One WP Migration
插件,并启用。
在https://import.wp-migration.com/下载插件扩展,下免费的。
在add new
界面上方找到upload plugin
选项,上传All-in-One WP Migration File Extension
(刚刚下载下来的zip包),安装,并启用。该插件扩展可解决网站50Mb上传限制。
点击插件的import
选项,import from file
,选择一开始下载的备份文件,带上传完成后按提示操作完成网站恢复。
检查网站和插件的功能是否正常
一般插件都会正常工作。楼主碰到的需要注意一下的有:Wordfense的防火墙、缓存类插件。