如何使用centos云服务器搭建WordPress个人博客

首先购买腾讯云(其他云也可以,这里丝毫没有推销的意思),学生党的话可以进入这个链接获取学生优惠,一年才一百块钱,https://cloud.tencent.com/act/campus

在购买完成之后打开自己的账户,右上角消息一栏中会给你购买的服务器的IP地址以及root账户密码等基本信息,我们使用这个信息进行登陆入。

一.创建新账户

首先创建一个新的账户用以备不时之需登陆。

adduser 新用户名
passwd 新用户名

这时候输入两遍新的密码即可完成注册,此时账户是无法使用sudo提权操作的我们需要将自己的账户添加到sudoers内才可以完成修改,思路是找到文件,给文件赋予修改的权限,进入文件完成修改,再将权限归还

whereis sudoers                         //找到位置
chmod -v u+w /etc/sudoers       //为这个文件夹赋予权限以修改
vim /etc/sudoers                        //编辑文件,如果没有vim请yum install vim -y进行安装

///////////找到这个地方在后面按格式在root后面新一行添加自己的账户(注意使用tab缩进)////////////

## Next comes the main part: which users can run what software on 
## which machines (the sudoers file can be shared between multiple
## systems).
## Syntax:
##
##      user    MACHINE=COMMANDS
##
## The COMMANDS section may have other options added to it.
##
## Allow root to run any commands anywhere 
root    ALL=(ALL)       ALL
[用户]  ALL=(ALL)       ALL          ##<------就是这个位置!!!!在这里新建这句话

## Allows members of the 'sys' group to run networking, software, 
## service management apps and more.
# %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS

[你的用户名]    ALL=(ALL)    ALL

chmod -v u-w /etc/sudoers        //归还权限

完成之后使用su [你的用户名] 进行测试,测试的方法比如说sudo yum install gcc -y 下载一个gcc编译器,看看是否允许sudo命令

二.下载必备环境

1.首先是:Apache(httpd)

Apache HTTP服务器程序是一个用于服务器网页访问的服务,直接执行程序可启动服务器的服务,我们部署之后就可以直接通过IP进行访问页面了(默认是一个无页面状态),我们可以在服务器的这个路径设置文件以供访问,/var/www/html

yum install httpd -y

下载完成之后需要启动服务和将服务设置为开机启动,以下是一些命令,这个服务启动命令很在接下来的配置中都会用到。

systemctl start  httpd.service     //启动httpd服务
systemctl status httpd.service     //查看httpd服务状态
systemctl enable httpd.service      //设置httpd服务开机启动
systemctl restart httpd.service     //重启httpd服务,以后运行的时候偶尔会用到

在我们进行启动之后查看服务状态,发现有绿色的active (running)显示就表示我们的服务已经正式启动了,此时我们可以通过浏览器访问一下我们的IP地址,此时已经不是空白一片什么都没有了(有一个粗暴的Apache服务页面)。但此时并不算正真的完成,我们都知道服务器需要有基本的防火墙才能更好的使用(防人之心不可无啊),我们需要启动防火墙,并且让防火墙启动允许httpd服务的规则,防火墙的服务启动同上:

启动防火墙

systemctl start firewalld
////////////分别添加http规则和https规则///////////////

firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https

在之后使用systemctl命令进行防火墙的重启

systemctl restart firewalld

进行防火墙的重启即可,如果不放心可以类比上面的命令查看服务状态,发现有绿色的active (running)显示就表示防火墙服务已经正式启动了。

2.php后端环境

PHP是一个编程语言,使用php进行后端的管理,WordPress博客依赖于php语言的支持,我们在下载的时候稍微注意一下,还需要下载一个php与mysql数据库链接的插件php-mysql即可。

yum install php php-mysql -y

配合上面安装的环境,我们可以写一个php网页查看php相关信息以确认php正式可以使用在服务器上。

cd /var/www/html              ///进入目标文件夹
touch phpinfo.php             ///创建测试文件
vim phpinfo.php                ///使用vim进行文件编辑

////////////////////phpinfo.php中编辑内容///////////////////

<html>
<head>
<title>php version</title>
<?php phpinfo(); ?>
</head>
<body>
<p>this is a php version test.</p>
</body>
</html>

打开浏览器输入  【你的ip地址】/phpinfo.php即可直接访问页面,如果出现PHP Version的一个表格界面说明一切正常,这个页面中包含了很多的信息,学习PHP的同学应该不会陌生。

3.MYSQL(mariadb)数据库

在旧版本中mysql就直接mysql下载即可,可他后来发生了一些版权争端的问题,所以后来的mysql下载均是使用mariadb这个名字,其余的命令均是不变,换汤不换药的样子。

yum install mariadb -y

下载完成之后我们使用mysql_secure_installation命令进行初步的数据库账户以及一些基础设置,这个设置会在接下来的过程中会询问你创建数据库密码,是否删除匿名账户,是否禁止root远程登陆,是否删除测试数据库,是否重新加载权限表等操作,我的选择是在重新设置root密码之后除了重新加载权限表等一律选No的。

在完成之后我们输入mysql -u root -p进行mysql数据库的登陆,登陆之后输入:

create database 【数据库名】;

/////////创建一个新的数据库,我们之后会使用到

show databases;

/////查看所有的数据库,如果看到wordpress数据库了说明创建成功。

 

三.安装WordPress

关于wordpress是什么,我这里直接复制百度百科的内容:

WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站,也可以把 WordPress当作一个内容管理系统(CMS)来使用。WordPress是一款个人博客系统,并逐步演化成一款内容管理系统软件,它是使用PHP语言和MySQL数据库开发的。

WordPress官方支持中文版,同时有爱好者开发的第三方中文语言包,如wopus中文语言包。WordPress拥有成千上万个各式插件和不计其数的主题模板样式。

稍微懂了一点八,不多做赘述,使用wordpress可以让你更加方便的管理网站,而不是每一个网站都去自己写html文件,这样会累死人的。

WordPress有中文的官方网站https://cn.wordpress.org/

关于如何下载,这里就不能使用yum从源上获取了,而是使用wget命令从网站中获取

wget https://cn.wordpress.org/wordpress-4.7.4-zh_CN.zip

然后使用相应的格式的解压命令进行解压,这里使用unzip,其他格式不尽相同。

unzip wordpress-4.7.4-zh_CN.zip

再之后使用移动命令将内容文件全部移动到/var/www/html/文件夹中,注意参数-R表示移动其中的全部内容

cp -R wordpress/* /var/www/html/

此时基本服务器的下载内容已经基本完成。

四.初始化

安装完成之后只是成功的一小部分,接下来我们需要进行文件的配置,在进入/var/www/html文件夹后,使用移动命令

cp wp-config-sample.php wp-config.php

将实例配置文件复制为我们正式的设置文件(有些时候则需要你备份复制文件,总之思路都是留个备份以备万一出错)

备份完成之后进入文件进行编辑,将数据库的名称和数据库的密码进行对应,其余的设置不需要修改。

vim wp-config.php

其大致内容为:

// ** MySQL 设置 - 具体信息来自您正在使用的主机 ** //^M
/** WordPress数据库的名称 */^M
define('DB_NAME', '[你刚刚创建的数据库]');^M
^M
/** MySQL数据库用户名 */^M
define('DB_USER', 'root');^M
^M
/** MySQL数据库密码 */^M
define('DB_PASSWORD', '[你刚刚设置的密码]');^M
^M
/** MySQL主机 */^M
define('DB_HOST', 'localhost');^M
^M
/** 创建数据表时默认的文字编码 */^M
define('DB_CHARSET', 'utf8');^M
^M
/** 数据库整理类型。如不确定请勿更改 */^M
define('DB_COLLATE', '');^M
^M
// [你刚刚创建的数据库]和[你刚刚设置的密码] 均为之前配置MySQL的时候你创建的,如果数据库名使用自定义的新账户的话也需要对应的修改数据库用户// // 所有文件中均带 '' 表示这是一串字符标准(防止名称中有空格)//

之后我们需要让apache服务一定的管理权限,让他好进行一些文件创建之类的操作。

chown -R apache:apache /var/www/html/

这样一切大功告成,重启服务即可,在浏览器上面输入自己的ip地址,让一切开始吧。

systemctl restart httpd.service

五.备份

为了防止将来乱搞,可以进行文件备份,这里建议养成一个按照时间进行归档处理的习惯,就是在用户目录下创建一个文件夹进行备份汇总,然后在这个文件夹中使用时间标签作为不同时间段的归类,现在有很多很成熟的版本控制器,这样做虽然土而傻,但也是一个对于新手友好的方案。(比如我)

那么直接创建文件夹

cd ~
mkdir blog_backup
mkdir 19_06_11
cp -r /var/www/html/* ~/blog_backup/19_06_11/

注意cp命令后加上一个-r的参数表示将文件夹中的子文件夹内容一同复制了,否则会出现部分文件无法复制的错误,19_06_11就是这篇文章撰写的日期。

【19.11.6更新】:

  • WordPress官方网站直接下载已经失效
  • 这个方法在最新版本系统中安装mysql之后会出现一个连接失败问题

 


1 条评论

WordPress 被强【另附新解决方案】 – 木十的博客 · 2019年10月31日 上午11:24

[…] 个人建站的参考文章http://www.mustenaka.cn/index.php/2019/06/11/how_to_create_personal_blog/ […]

发表回复

Avatar placeholder

您的电子邮箱地址不会被公开。 必填项已用 * 标注