基于Linux命令实现WordPress手动建站

简介: 本场景将提供1台Linux云服务器实例,通过Linux命令实现WordPress的部署实践。

基于Linux命令实现WordPress手动建站


1. 创建资源

在实验开始之前,您需要创建相关实验资源。

1.在实验室页面,单击创建资源

2.(可选)在实验室页面左侧导航栏中,单击云产品资源列表,可查看本次实验资源相关信息(例如IP地址、用户信息等)。

说明:资源创建过程需要1~3分钟。

2. 手动部署LNMP环境

1)准备编译环境

a.远程连接需要部署LNMP环境的ECS实例,点击右侧 Web Terminal。实验环境已经提供了一个连接好的ECS服务器。

b.关闭防火墙

i. 复制粘贴下方命令进行执行,查看当前防火墙的状态。

systemctl status firewalld

说明:

如果防火墙的状态参数是inactive,则防火墙为关闭状态。

如果防火墙的状态参数是active,则防火墙为开启状态。

ii. 关闭防火墙。如果防火墙为关闭状态可以忽略此步骤

如果您想临时关闭防火墙,需要运行以下命令:

systemctl stop firewalld

如果您想永久关闭防火墙,需要依次运行以下命令:

关闭防火墙

systemctl stop firewalld

实例开机时,禁止启动防火墙服务

systemctl disable firewalld

c.关闭SELinux

i. 运行命令

getenforce

查看SELinux的当前状态

如果SELinux状态参数是Disabled,则SELinux为关闭状态。

如果SELinux状态参数是Enforcing,则SELinux为开启状态。

ii. 关闭SELinux。如果SELinux为关闭状态可以忽略此步骤

SELinux关闭的方式分为临时关闭和永久关闭,请您根据自身业务需求进行选择

2)安装Nginx

a.运行以下命令安装Nginx

yum -y install nginx

b.运行以下命令查看Nginx版本

nginx -v

返回结果如下所示,表示Nginx安装成功

3)安装MySQL

c. 运行以下命令更新YUM源

rpm -Uvh  http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

d. 运行以下命令安装MySQL

yum -y install mysql-community-server --nogpgcheck

注意:如果您使用的操作系统内核版本为el8,可能会提示报错信息No match for argument。您需要先运行命令yum module disable mysql禁用默认的MySQL模块,再安装MySQL

e. 运行以下命令查看MySQL版本号

mysql -V

返回结果如下所示,表示MySQL安装成功

f. 运行以下命令启动MySQL

systemctl start mysqld

g. 依次运行以下命令设置开机启动MySQL

systemctl enable mysqld
systemctl daemon-reload

4)安装PHP

a.更新YUM源

ⅰ. 运行以下命令添加epel源

yum install \
https://repo.ius.io/ius-release-el7.rpm \
https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

出现提示输入y

ⅱ. 运行以下命令添加Webtatic源

rpm -Uvh https://uk.repo.webtatic.com/yum/el7/webtatic-release.rpm

b.运行以下命令安装PHP

yum -y install php70w-devel php70w.x86_64 php70w-cli.x86_64 php70w-common.x86_64 php70w-gd.x86_64 php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64  php70w-pdo.x86_64   php70w-mysqlnd  php70w-fpm php70w-opcache php70w-pecl-redis php70w-pecl-mongodb

c.运行以下命令查看PHP版本

php -v

返回结果如下所示,表示安装成功

5)配置Nginx

a.运行以下命令备份Nginx配置文件

cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak

b.修改Nginx配置文件,添加Nginx对PHP的支持

ⅰ. 运行以下命令打开Nginx配置文件

vim /etc/nginx/nginx.conf

ⅱ. 按 i 进入编辑模式

ⅲ. 在server大括号内,修改或添加下列配置信息。

除下面提及的需要添加或修改的配置信息外,其他配置保持默认值即可,添加location /配置信息如下:

location / {
            index index.php index.html index.htm;
        }
        location ~ .php$ {
            root /usr/share/nginx/html;    
            fastcgi_pass 127.0.0.1:9000;   
            fastcgi_index index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include fastcgi_params;   
        }

添加或修改配置信息后,文件内容如下图所示:

ⅳ. 按下 Esc 键后,输入 :wq 回车以保存关闭配置文件

c.运行以下命令启动Nginx服务

systemctl start nginx

d.运行以下命令设置Nginx服务开机自启动

systemctl enable nginx

6)配置MySQL

a.运行以下命令查看/var/log/mysqld.log文件,获取并记录root用户的初始密码

grep 'temporary password' /var/log/mysqld.log

命令行返回结果如下,其中cthgjUNTh8,t为MySQL的初始密码(初始密码以显示的为准)。在下一步重置root用户密码时,会使用该初始密码。

b.运行以下命令配置MySQL的安全性

mysql_secure_installation

ⅰ. 输入MySQL的初始密码,输入上一步获取的root用户初始密码

ⅱ. 为MySQL设置新密码

注意:

输入新密码。长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号。特殊符号包含()` ~!@#$%^&*-+=|{}[]:;‘<>,.?/

确认使用新密码,输入y

#新密码设置完成后,需要再次验证新密码。

再次输入新密码,并输入y进行确认。

ⅲ. 输入 y 删除匿名用户

ⅳ. 输入 y 禁止使用root用户远程登录MySQL

ⅴ. 输入 y 删除test库以及用户对test库的访问权限

ⅵ. 输入 y 重新加载授权表

7)配置PHP

a.新建并编辑phpinfo.php文件,用于展示PHP信息

ⅰ. 运行以下命令新建phpinfo.php文件

vim <网站根目录>/phpinfo.php

说明:<网站根目录>是您在nginx.conf配置文件中location ~ .php$大括号内,配置的root参数值,如下图所示

本文配置的网站根目录为/usr/share/nginx/html,因此需要运行以下命令新建phpinfo.php文件:

vim /usr/share/nginx/html/phpinfo.php

ⅱ. 按 i 进入编辑模式

ⅲ. 输入下列内容,函数phpinfo()会展示PHP的所有配置信息

<?php echo phpinfo(); ?>

ⅳ. 按 Esc 键后,输入 :wq 回车,保存关闭配置文件

b.运行以下命令启动PHP-FPM

systemctl start php-fpm

c.运行以下命令设置PHP-FPM开机自启动

systemctl enable php-fpm

8)测试访问LNMP配置信息页面

a.在本地Windows主机或其他具有公网访问能力的Windows主机中,打开浏览器。

b.在浏览器的地址栏输入 http://<ECS实例公网IP地址>/phpinfo.php 进行访问。

说明:ECS公网地址在云产品资源列表查询。

访问结果如下图所示,表示LNMP环境部署成功。

3. 手动搭建WordPress

1)配置WordPress数据库

a. 进入MySQL数据库

使用root用户登录MySQL,并输入密码。密码为您在搭建环境时为数据库设置的密码

mysql -uroot -p

b. 为WordPress网站创建数据库;本教程中数据库名为wordpress

create database wordpress;

c. 创建一个新用户管理WordPress库,提高安全性。

MySQL在5.7版本后默认安装了密码强度验证插件validate_password。您可以登录MySQL后查看密码强度规则

show variables like "%password%";

说明:本实验中创建新用户user,新用户密码为PASSword123.

create user 'user'@'localhost' identified by 'PASSword123.';

d. 赋予用户对数据库wordpress的全部权限

grant all privileges on wordpress.* to 'user'@'localhost' identified by 'PASSword123.';

e. 使配置生效

flush privileges;

f. 输入 exit 退出MySQL

exit;

2)下载WordPress,并移动至网站根目录

a. 下载WordPress

通过yum命令下载的WordPress保存在/usr/share/wordpress目录下

yum -y install wordpress

b. 将下载的WordPress移动至网站根目录

mv /usr/share/wordpress /usr/share/nginx/html/wordpress

3)修改WordPress配置文件

a. 进入移动后的WordPress路径下,软连接配置文件wp-config.php

cd /usr/share/nginx/html/wordpress
ln -snf /etc/wordpress/wp-config.php wp-config.php

b. 编辑wp-config.php文件

vim wp-config.php

c.按 i 键切换至编辑模式,根据已配置的WordPress数据库信息,修改MySQL相关配置信息,修改代码如下所示。

WordPress网站的数据信息将通过数据库的user用户保存在名为wordpress的数据库中

d. 修改完成后,按下 Esc 键后,输入 :wq 并回车,保存退出配置文件

4)修改Nginx配置文件

a. 运行以下命令打开Nginx配置文件

vim /etc/nginx/nginx.conf

b.按 i 键进入编辑模式

在server大括号内,将root后的内容替换为WordPress根目录。本示例中根目录为/usr/share/nginx/html/wordpress。

在location ~ .php$大括号内,将root后的内容替换为WordPress根目录

c. 修改完成后,按下 Esc 键后,输入 :wq 并回车,保存退出配置文件

d. 运行以下命令重启Nginx服务

systemctl restart nginx

5)安装并登录WordPress网站

a.在本地物理机上使用浏览器访问ECS实例公网IP,进入WordPress安装页面

b.填写网站基本信息,然后单击安装WordPress。

参数说明:

  • 站点标题:WordPress网站的名称。例如:demowp。
  • 用户名:登录WordPress时所需的用户名,请注意安全性。例如:testwp。
  • 密码:登录WordPress时所需的密码,建议您设置安全性高的密码。例如:Wp.123456。
  • 您的电子邮件:用于接收通知的电子邮件。例如:1234567890@aliyun.com。

c. 单击登录

d. 输入在安装WordPress时设置的用户名testwp和密码Wp.123456,然后单击登录。

成功进入您个人的WordPress网站

实验地址:https://developer.aliyun.com/adc/scenario/580e6c87467d4048b74dbc046fb1e037

相关文章
|
16天前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
44 14
Linux 10 个“who”命令示例
|
5天前
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
57 20
|
5天前
|
网络协议 Linux 应用服务中间件
kali的常用命令汇总Linux
kali的常用命令汇总linux
26 7
|
25天前
|
Linux 数据库
Linux中第一次使用locate命令报错?????
在Linux CentOS7系统中,使用`locate`命令时出现“command not found”错误,原因是缺少`mlocate`包。解决方法是通过`yum install mlocate -y`或`apt-get install mlocate`安装该包,并执行`updatedb`更新数据库以解决后续的“can not stat”错误。
31 9
|
23天前
|
监控 网络协议 Linux
Linux netstat 命令详解
Linux netstat 命令详解
|
29天前
|
运维 监控 网络协议
运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面
本文介绍了运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面,旨在帮助读者提高工作效率。从基本的文件查看与编辑,到高级的网络配置与安全管理,这些命令是运维工作中的必备工具。
116 3
|
1月前
|
Linux
在 Linux 系统中,`find` 命令
在 Linux 系统中,`find` 命令
33 1
|
Linux Windows 搜索推荐
Linux主机WordPress伪静态设置方法
WordPress实现伪静态利于搜索引擎收录,但有不少新人朋友还是始终无法成功设置WordPress伪静态。 WordPress已经给出了几种URL伪静态形式,但都不很理想,我们希望的URL形式为: 域名/分类别名/文章ID
1979 0
|
1月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
95 8
|
1月前
|
监控 Linux
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
266 6
下一篇
DataWorks