关于管理编程社网站的知识与技巧(自用,必看)

最近呢,咱们编程社的网站终于是又修好了。趁着这个机会,笔者决定是要写一篇攻略,专门用于了解与锻炼建立网站的能力。所以,如果现在是你在管理编程社的网站,这些东西一定要看,以备不时之需。

索引:


1. 使用LAMP建立网站

1.1 建站所需要的东西

我们编程社的网站经历过云服务器,物理机器以及现在这种情况,理论上来讲,我们需要的是一个机器,云服务器(可以去阿里云买)会方便很多,但是由于经济关系我们可能需要在实体机上操作。为此,你还需要外网映射工具,例如SakuraFrp。也不贵(目前),至少比服务器便宜,反正编程社电费不要钱。
为了方便讲解,本攻略主要以试用的云服务器为例子,请自行为你的服务器套上外网映射。
另外,你也可以直接去阿里云的体验站体验一个小时的建站流程。阿里云基于ECS搭建LAMP体验

基于ECS搭建云上博客(体验时间更长些)

1.2 关于LAMP的总览和攻略推荐

如果你很不幸,把网站搞砸了,或者是你想自己练习一下从头建站,那么请从这里开始看起。
LAMP全称“Linux, Apache, Mysql, PHP”,是建站必须要的。有关于LAMP搭建过程我不会过多描述,这里推荐一些攻略结合我的补充去看:
* 编程社原生LNMP攻略(方笛)
* 手把手教你搭建LAMP(CSDN)

1.3 开始安装LAMP

1.3.1 使用CentOS7作为Linux系统

你既然再看这篇文章,应该不至于不知道Linux和CentOS是什么东西吧。不知道的赶紧回去恶补。
作为操作系统,笔者首选的就是CentOS。去年笔者使用了CentOS8作为操作系统,可惜因为不熟悉以及CentOS8退出了历史舞台,笔者走了很多弯路,以至于现在才修好网站。而CentOS7就会稳定很多,所以你现在需要准备一个CentOS7的镜像并把它装到电脑里,或者在购买云服务器的时候选择CentOS7。为了方便,你可以选择安装带GUI的服务器。
这里是推荐下载的镜像站,建议使用迅雷下载(至少快10倍,不需要会员)。
阿里云镜像站CentOS7(点击下载)

1.3.2 连接到你的服务器

你要在服务器上安装网站,你首先就要连接到你的服务器。我们用的是ssh连接法,方便极了。
关于ssh如何连接我不想多说什么,但是还是有几点需要注意:
1. 记得给你的服务器开放22端口,不然根本连接不进来。
2. 如果你用的是实体机,记得外网映射你的22端口,然后记住映射出的远程端口。
3. ssh连接命令是

ssh root@ssh.cycode.club #使用云服务器并且绑定好了ssh的域名解析
ssh -p xxxxx root@ssh.cycode.club #使用实体机并用域名绑定好了映射ip,xxxxx是远程端口
  1. 我经常使用的ssh软件是git bash,非常好用,要资源的我这里直接放迅雷下载。
    git下载(提取码8wcm)

1.3.3 安装PHP

在安装之前,我们先要注意一下,CentOS7的yum源直接下载php最新版本是很难的,所以我们要换一下源。
参考资料:linux服务器将php5.6升到7.4
我们连接到服务器上,然后开始安装php
先进行换源:

yum -y install epel-release
yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum -y install yum-utils
yum-config-manager --enable remi-php74

注意最后那个php74可以改成目前最新版本,如php73,反正目前就只有74。但是其实php已经出到8了,但不用管,够用了。
然后就是安装php

yum install php php-opcache php-xml php-mcrypt php-gd php-devel php-mysql php-intl php-mbstring php-common php-cli php-gd php-curl -y

然后你就可以验证一下php了

[root@iZuf6d7qoheo08v6guxb7uZ ~]# php -v
PHP 5.4.16 (cli) (built: Apr  1 2020 04:07:17) 
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
    with Zend OPcache v7.0.5, Copyright (c) 1999-2015, by Zend Technologies

php安装完成!!!

1.3.4 安装Apache

安装apache会稍微简单一些,使用yum安装。

yum -y install httpd

然后你就可以检查安装版本了:

[root@iZuf6hfqz99p7jcm2vgx2yZ ~]# httpd -v
Server version: Apache/2.4.6 (CentOS)
Server built:   Mar 24 2022 14:57:57

完成之后我们就要给它安装系统服务,让他能开机自启:

systemctl enable httpd && systemctl start httpd

然后apache应该就启动成功了

好的,apache能启动,我们就先把它放一边了。
* 注意:Apache的默认站点位于“/var /www/html”

1.3.5 安装MariaDB

对于数据库,我们一般用的是mysql,但是现在它已经变了,我们有了一个不错的新选择,那就是MariaDB。它的语法和文件存储位置和mysql几乎一样,所以不用担心学了MariaDB而不会mysql了。
执行命令:

yum -y install mariadb-server

安装完成,设置开机自启

systemctl enable mariadb && systemctl start mariadb

然后我们就可以初始化数据库

mysql_secure_installation
  • 这一段我不想再赘述太多,你们自己进入这个网页去看,把MariaDB装好来。手把手教你搭建LAMP(CSDN)
  • 一定要测试一下你能不能连接到数据库,这很重要,随后记住账户密码(账户一般是root,也可以跟随网上教程创立新的账户,这些要在后面建立wordpress博客站的时候用到

2. 添加wordpress

2.1 介绍wordpress

wordpress是一个建立博客网站的好帮手,有了它,不用学会php或者JavaScript也可以建立如同本站一样的网站。wordpress本质上是一个文件夹,你要把他放进 /var/www/html中就可以使用了。

2.2 下载wordpress

为了方便,我们可以在windows上先给他下载好在传进服务器里面。这里有一些下载渠道
官网下载:中文版wordpress
迅雷网盘:迅雷网盘(提取码nega)
由于我的网盘目前是最新版,但是不可能去给网盘继续更新内容,所以我的建议还是去官网下载,中文版方便一些,但是下载速度实在是感人,所以用迅雷下载官网文件是我最推荐的,几秒就下载好了。

2.3 导入wordpress

2.3.1 上传wordpress文件

2.3.1.1 下载FileZilla

如果没有问题,你现在下载下来的应该就是一个压缩包,请注意这个文件的后缀名,可能是.tar.gz,也可能是.zip。先不要管是什么,咱们要先想办法把它丢进垃圾桶里面。好吧,咱们要上传它。
我在这里推荐一个工具,叫做FileZilla,是使用ssh协议传输文件的,采用GUI界面,对新手友好。这里就直接放官网链接:

选择绿色版会方便很多,因为这玩意不需要什么注册表,只是个工具。
注意:不要下载服务器Server版本,那是给服务器用的,你下载客户端Client版本就可以了

2.3.1.2 使用FileZilla

把FileZilla放在一个容易记的位置,然后就可以打开它。稍微摸索一下,你就在那里连接上服务器,应该不会有人不会这些操作吧
然后你就可以开始上传了,使用界面大致如下图所示:

然后你就可以看一下如何了

[root@server ~]# pwd
/root
[root@server ~]# ls downloads/
wordpress-5.9.3-zh_cn.zip

上传完成!

2.3.2 解压wordpress压缩包

你可以看见,这是一个压缩包,但是我们要把它解压开来。正如之前所说的,他可能是两个格式,我这里只讲如何解压.zip格式的压缩包。那还不是因为大家都选择官网上面最大的那个按钮

2.3.2.1 解压.zip压缩包

众所周知,linux本身是不支持.zip格式的文件的,那是给windows用的。但是软件这个东西谁也说不好,这不,就有一个unzip的软件,我们直接来用。

yum -y install unzip

然后进入你上传的目录,直接解压

cd /root/downloads #这个是我放压缩包的目录,你自己注意一下
unzip wordpress-5.9.3-zh_cn.zip -d . #解压到当前目录
ls #看一下是不是多了一个文件夹
  • 由于文件名很长,在解压的时候记得使用tab补全
2.3.2.2 解压.tar.gz压缩包

我不多说,你自己去看教程,大同小异

2.3.3 装载wordpress

我们知道,apache网站的文件目录是在/var/www/html下面,我们以后当然可以改,而且尽量要改,但是现在先这样。直接把wordpress文件夹复制到那里:

cd /root/downloads #是自己处在压缩包的位置
cp -r wordpress/* -t /var/www/html/ #将里面的文件全部复制到网站根目录

然后我们重启服务器看一下:

apachectl restart #重启apache

然后你再次访问网站,就可以看见wordpress的安装界面了

2.3.4 给文件夹授权

在安装前,我们要先做一件事,就是把/var/www/html这个文件夹归为apache所有,这样能省很多事,要不然这个权限不够,那个无法写入,真的很烦人。
直接上命令

cd /var/www/
ls -a #显示详细信息,一般我们可以直接用ll作为命令
#不用看了,肯定左半边两大列的root
chown -R apache:apache . #将整个文件夹全归apache所有
ls -a #用ll再看一次,是不是全是apache了?

2.4 安装wordpress

终于来到最重要的安装环节了,我们直接访问网站

设置好一切,点击确定,然后你就会惊喜地发现——失败了。
其实是这样的,第一行的数据库名是要填写一个存在的空数据库,他不会帮我们建立,那我们就自己来。
直接连接到数据库:mysql -u root -p
然后就直接建立数据库:

CREATE DATABASE wordpress;

然后就可以了,点击确定重新安装wordpress
但是问题是,他又弹出来无法写入,这就很麻烦。你需要把它复制进里面。

cp /var/www/html/wp-config-sample.php /var/www/html/wp-config.php
vim /var/www/html/wp-config.php

注意vim的用法
然后你就可以修改里面的东西,应该不难

最后点击继续,可以看到,我们的wordpress已经安装完成,准备就绪了。

3. LAMP的进阶操作

关于LAMP,我们只能说是 “装好了”,但是它属实不太好用,我们多半还是要配置的。举个例子:有的服务器它不止运行一个网站,有好几个网站,但是总不可能所有的文件全部都往/var/www/html里面丢吧,所以,我们就有了很多事情要做。

3.1 为80端口配置虚拟主机

众所周知,http传输协议使用的是80端口,如果你的防火墙不开放80端口,那么你压根就无法访问。现在,我们需要在apache中创建一个虚拟主机,这是一个单独的文件夹,比如说/var/www/cycode.club,而不是默认路径,这样的话管理区来就方便。我们可以让它监听80端口。

3.1.1 为网站加上域名

在此之前,我们需要准备一个域名,比如你现在应该就掌管着cycode.club的域名。那么,你现在就去域名管理页(咱们是阿里云)去把它解析到我们的服务器。


然后你在cmd里面ping一下,不用我教吧

[root@VM-12-17-centos ~]# ping www.cycode.club
PING www.cycode.club (43.138.157.164) 56(84) bytes of data.
64 bytes from 43.138.157.164 (43.138.157.164): icmp_seq=1 ttl=63 time=0.380 ms
64 bytes from 43.138.157.164 (43.138.157.164): icmp_seq=2 ttl=63 time=0.188 ms
^C
--- www.cycode.club ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 0.188/0.284/0.380/0.096 ms

如果可以,你还可以这么干:

如此一来,你在进入网站的时候就不用输入www了
不过你现在暂时还不行,没看到记录值用的是https的网址吗。这个以后再讲,你现在就老老实实的去输入www或者暂时把https改成http

3.1.2 在配置文件中设置域名

参考资料:
* 在apache服务器上安装ssl证书(阿里云)
* apache虚拟主机的学习和应用(阿里云)

不懂没关系,现在还不用ssl,但是他能给笔者一些启发。
首先我们先要到httpd.conf中要求apache认可我们的配置文件–httpd-vhosts.conf

vim /etc/httpd/conf/httpd.conf

然后去掉Include conf/extra/httpd-vhosts.conf前的#
等等,这句话在哪???
事实上,我也找不到。一看,人家那是apache2。我不懂,但我大受震撼。既然如此, 我们就把配置直接写在httpd.conf就好了

vim /etc/httpd/conf/httpd.conf

找一个恰当的位置,写入下列的配置,位置大概在DocumentRoot "/var/www/html"的附近就好。

NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "@@ServerRoot@@/docs/dummy-host.example.com"
ServerName dummy-host.example.com
ServerAlias www.dummy-host.example.com
Errorlog "logs/dummy-host.example.com-error_log"
CustomLog "logs/dummy-host.example.com-access_log" common
</VirtualHost>

woc,太多了,我看不懂,咋办?
没事,可以选择简单一点

NameVirtualHost *:80 
<VirtualHost *:80>
DocumentRoot "/www/example.com"
ServerName www.example.com
<Directory /var/www/example.com>
AllowOverride All
Require all granted
</Directory>
</VirtualHost>

ServerAdmin管理员邮箱。
DocumentRoot网站目录(注意:如果网站目录中的路径有空格,请在路径两端加上双引号)。
ServerName要绑定的域名(必填)。
ServerAlias要绑定的虚拟主机的别名。(可选,如果多个域名,中间以空格分隔,如果没有,则去掉该行)。支持,?两种通配符,比如.abc.com,表示任意一个abc.com的二级域名都可访问。
CustomLog用户日志文件(可选,如果不需要,则去掉该行)。
ErrorLog 错误日志(可选,如果不需要,则去掉该行)。
Directory 设置一下网站文件夹的属性

是不是感觉没变少?是我又加了Directory的属性,以后有用,现在先复制进去

然后,我们就可以创建文件夹了

cd /var/www/
mkdir cycode.club
cp -rf ./html -t ./cycode.club
ls cycode.club

看一看,是不是已经复制成功了?
然后,直接重启网站服务器,输入域名,然后直接开始。

apachectl restart
curl http://www.cycode.club

当然你第二行也可以不输,直接在你自己的电脑上的浏览器里面,像平常访问其他网址一样访问咱们的网站。

3.2 为网站配置ssl证书

如果你细心,你会发现,当你输入自己的网站的时候,上方就有一个“不安全”的字样,看起来非常难受。虽然说咱们这个网站也没有什么太贵重的东西,但你在网上上传下载的东西都被别人看到的感觉很不好,所以你需要准备ssl证书,才可以使用https访问。

3.2.1 申请免费证书

要证书,咱们一般使用免费的,这里有两个方案,我一开始用的是第一种,后来则选用了第二种,更方便。

3.2.1.1 使用letsencrypt证书

letsencrypt官网
说实话,我不太想讲,虽然这些都是英文的,但是这有点小复杂,我甚至因此把网站搞砸了。它是使用自动化的方式安装证书,不太好手动操控。这种东西手动操控可以了解到证书的使用方式。

3.2.1.2 使用阿里云免费ssl证书

前排提醒:本章比较复杂,有什么不懂的直接看参考资料或者在评论区@我

其实你用腾讯云也没有问题,都有免费证书,大同小异,我这里以阿里云为例。
* 阿里云免费证书申请页
* 参考资料:阿里云免费证书操作指南

进入这里,记得点击“DV单域名证书(免费试用)”,相信你也不会点错,太贵了
跟着流程走,申请完毕,你就可以去操作它。
我的建议是,直接下载下来
* 参考资料:在Apache上安装SSL证书


注意选择的是apache服务器上的证书
在你的电脑上解压好,把他们三改个名,去掉前面的数字加下划线

然后利用FileZilla把它传进服务器里面,我传入/root/downloads/cert(建议你也这么传,以后有用,记得自己新建文件夹)

3.2.2 安装证书

你现在应该已经将文件上传到了服务器里,现在,我们把这些文件放在apache的安装目录/etc/httpd/下。

cd /root/downloads
cp -rf cert -t /etc/httpd/

好了,现在复制完成,我们要写一些配置文件,注意看好,有什么不懂的建议去看参考资料。

3.2.2.1 安装ssl模块

apache默认没有安装ssl模块,这坑了我好几天。

yum -y install mod_ssl
vim /etc/httpd/conf/httpd.conf

打开了vim,我们在之前添加虚拟主机的位置下面加上两行:

LoadModule ssl_module modules/mod_ssl.so
LoadModule rewrite_module modules/mod_rewrite.so

第二行暂时跟现在没关系,但以后有用,这次顺带写上。
这两行的作用就是加载apache的模块,方便使用ssl证书。

3.2.2.2 为443端口添加虚拟主机

和之前一样,上次是80端口,这次是443端口给https用。

vim /etc/httpd/conf/httpd.conf

然后在刚才添加加载模块的两行下面加上这么一块东西:

<VirtualHost *:443>
    ServerName www.cycode.club
    DocumentRoot  /var/www/cycode.club
    SSLEngine on
    SSLProtocol all -SSLv2 -SSLv3
    SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
    SSLHonorCipherOrder on
    SSLCertificateFile cert/www.cycode.club_public.crt
    SSLCertificateKeyFile cert/www.cycode.club.key
    SSLCertificateChainFile cert/www.cycode.club_chain.crt
</VirtualHost>

ServerName #修改为申请证书时绑定的域名
DocumentRoot /var/www/example.com
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3 # 添加SSL协议支持协议,去掉不安全的协议。
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM # 修改加密套件。
SSLHonorCipherOrder on
SSLCertificateFile cert/domain name1_public.crt # 将domain name1_public.crt替换成您证书文件名。
SSLCertificateKeyFile cert/domain name1.key # 将domain name1.key替换成您证书的密钥文件名。
SSLCertificateChainFile cert/domain name1_chain.crt # 将domain name1_chain.crt替换成您证书的密钥文件名;证书链开头如果有#字符,请删除。

然后在重启服务器,在网址栏里输入https://www.cycode.club

apachectl restart
curl https://www.cycode.club

理论上应该是成功的,不行的话看看防火墙或是云服务器安全组设置。

3.2.2.3 设置强制https

这玩意就是说让你不管怎么输入网址都会让你用https登陆,好处就是方便,坏处就是网站崩了不太好修。当然我建议是加上强制跳转。
在之前80端口虚拟主机的位置/Directory后,/VirtualHost前的位置上加上几行

RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://%{SERVER_NAME}$1 [L,R]

最后的结果就是这样:

<VirtualHost *:80>
DocumentRoot /var/www/cycode.club
ServerAlias www.cycode.club
<Directory /var/www/cycode.club>
AllowOverride All
Require all granted
</Directory>
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://%{SERVER_NAME}$1 [L,R]
</VirtualHost>

LoadModule ssl_module modules/mod_ssl.so
LoadModule rewrite_module modules/mod_rewrite.so

<VirtualHost *:443>
    ServerName www.cycode.club
    DocumentRoot  /var/www/cycode.club
    SSLEngine on
    SSLProtocol all -SSLv2 -SSLv3
    SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
    SSLHonorCipherOrder on
    SSLCertificateFile cert/www.cycode.club_public.crt
    SSLCertificateKeyFile cert/www.cycode.club.key
    SSLCertificateChainFile cert/www.cycode.club_chain.crt
</VirtualHost>

这样就基本完工,记得重启服务器

apachectl restart

4. 搭建编程社网站

作为服务器的管理者,你肯定要做的就是备份网站,咱们的服务器毕竟不是长期的,肯定要过期,那你就要做好备份还原的准备
我在这里打个预防针,不知道为什么,不管使用哪种方法备份,备份文件的导出都是非常非常慢的,一般是中午去备份,晚上才好

4.1 使用插件备份还原网站

wordpress的插件很强大,有一些插件可以很方便的让你备份迁移网站,但很多都要钱,我这里会讲解一些插件,以及他们的利与弊。

4.1.1 使用All-in-one-migration插件

这个插件,中文名“一站式迁移WP”,免费版限制很大。我这里会讲解如何使用好免费版
前排提醒,腾讯云轻量应用服务器(目前测试出的)不支持在网站上长传512M以上文件,否则会封闭网站10分钟左右,救不回来。用腾讯云轻服的先跳过吧

4.1.1.1 安装All-in-one-migration

首先打开网站后台,点击左侧插件,选择“安装插件”,然后再右侧搜索框中输入All-in-one-migration,然后你就会看见下面有一个叫“一站式WP迁移”的(也有可能是英文名),直接点击安装,然后启用。

4.1.1.2 导出网站文件

我们启用插件后,点击左侧的插件图标(直接摆在列表里的),然后我们点击“导出”,点击绿色框框图标,选择“文件”。

然后等待中间的框框加载完后,直接下载,速度真的很慢很慢。
下载下来后,我们就直接把它保存好,这是我们的根基之一以后网站三大根基,这个是可以完全恢复的而不至于是网站彻底消失

4.1.1.3 导入恢复网站文件

这一步很重要,因为基础版的插件有个问题就是他只支持你网站直接导入而不支持恢复服务器上自己的备份,而腾讯云轻量应用服务器不支持网站上传过大,所以腾讯云轻服的可以先撤了
我们点开“导入”,选择文件或直接拖入,然后你就会发现,文 件 竟 然 有 限 制。

你要想,2M的限制给乞丐用啊!!!当然,这是我当初的想法,后来才知道,是我错怪了插件官方,来接着看如何解除限制:
你会在插件的帮助下看到3个方法:
1. 购买我们的插件(简单)
2. 联系你的主机服务商(中等)
3. 自己去修改上限(困难)

很显然,他就是在骗你,我们去看看自己是如何修改的:

如果你去试了,你就会发现:一点用都没有
记住,你自己就是主机服务商
为什么呢:因为插件官网认为你的wordpress被限制了,所以上传不上去。事实上,咱们的wordpress根本没被限制,问题就出在wordpress的上级:PHP
所以,我们要修改一下php的上传限制。

vim /etc/php.ini

打开php的配置文件,我们将下面三条后面的限制全部加大:

memory_limit = 1024M
upload_max_filesize = 1024M
post_max_size = 1024M

记得在vim中使用’?’来帮助自己查找上面三条。

然后再重启服务器

apachectl restart

看一下,文件上传限制是不是加大了。

最后,当然是愉快地在All-in-one-migration中导入我们的网站还原咯。

4.1.1.4 All-in-one-migration的优缺点

本插件优点很明显:

  1. 迁移网站方便,只需要导入和导出,不需要关注其他参数
  2. 文件只有一个,管理方便。

缺点也很突出:

  1. 文件过大,下载真的很慢
  2. 不允许还原本地的文件,一定要从外部上传,对于无法登入桌面并且限制文件上传大小的服务器来说,直接封死了这条路。

4.1.2 使用UpdraftPlus备份还原

同样的,这个插件一样要钱
我打字打到一半,不想打了,这个插件我用的越来越少了,因为他无法迁移网站,你们自己去看攻略吧。
updraft的备份文件分为五份,这是三大根基之二,处理好来可以拯救网站,但是处理不好可能会导致网站进不去,网页打不开,直接裂开

4.2 直接导出网站所有数据(推荐)

这个方法一听就很土,但是确是我现在正在用的,需要的东西少,成功率高,多练习一下能帮助你更好的了解网站的存储结构。

4.2.1 了解wordpress的存储结构

要手撕wordpress文件,首先就要了解一下wordpress的文件里都存了些啥:

咱们知道,在安装wordpress时要求连接到数据库。那么数据都放在数据库里了,wordpress文件又是什么,这里给张图:

image-20220424181022838

很显然,无论是数据库还是文件本体,都不能随意丢弃,那么我们就要都导出来

4.2.2 导出wordpress

4.2.2.1 导出wordpress本体

在网站刚开始的时候,wordpress本体会比数据库大得多,文件又杂,如果你用FileZilla直接导出来的话,会很慢,所以我们需要对它进行压缩导出:

cd /var/www
tar -zcvf cycode.club.tar.gz cycode.club #没有设置虚拟主机的,把cycode.club换成html
ls

然后我们就可以看到有一个cycode.club.tar.gz,把它用filezilla导出到我们的电脑或是新服务器。(可能还是很慢)

4.2.2.2 导出wordpress数据库

数据库同样是博客里很重要的一个东西,我们需要导出wordpress的数据库。

mysqldump -uroot -p wordpress > wordpress.sql
ls

mysqldump -u 用户名 -p 数据库名 > 导出的文件名
  mysqldump -u root -p db_name > test_db.sql

你看,你的当前目录下就有一个数据库文件了。用FileZilla导出来吧。

4.2.3 导入并还原wordpress

你现在已经拥有了cycode.club.tar.gz和wordpress.sql两个文件了,这就够了,丢进服务器

4.2.3.1 导入数据库

先导入数据库:

命令格式
mysql -u用户名 -p 数据库名 < 数据库名.sql
范例:
mysql -uabc_f -p abc < abc.sql
(导入数据库abc从abc.sql文件)

mysql -uroot -p # 进入数据库,先创建数据库名为wordpress(存在的直接drop掉吧)
DROP DATABASE wordpress;
CREATE DATABASE wordpress;
quit

然后导入:

mysql -uroot -p wordpress < wordpress.sql

然后你就可以进入mysql看一眼了

USE DATABASE wordpress;
SHOW TABLES;

应该是成功了的。

4.2.3.2 导入wordpress本体文件

这个应该不难理解,直接解压到/var/www

cd /root/downloads #来到存放文件压缩包目录
tar -xvf cycode.club.tar.gz -C /var/www #直接放到www目录下

然后就是修改好文件夹的权限

cd /var/www/
chown -R apache:apache cycode.club
4.2.3.3 检查其他的一些东西

既然你是直接迁移过来的,我的建议就是好好地检查一下配置文件,有几个点需要注意:

  • apache配置文件,位置/etc/httpd/conf/httpd.conf,建议直接从原服务器拷贝,不拷贝的话记得写上80端口虚拟主机443端口虚拟主机域名和原来保持一致)、两个模块的加载(ssl_mod.so和rewrite_mod.so)
  • ssl证书文件,可以重新下载也可以直接从原服务器下载下来,就3个文件,我是放在/etc/httpd/cert下面,位置记得保持不变
  • 阿里云域名解析记得更改到新服务器上面,否则你的网站就会解析到原服务器上。

最后就是重启服务器,上浏览器检查。


本文章暂时保持更新,可以经常来这里看看哦

最后修改日期: 2022年4月25日

作者

0 0 投票数
文章评分
订阅评论
提醒
2 评论
内联反馈
查看所有评论