【Linux基础服务教程】LNMP环境安装+部署WordPress博客

上一期教程LAMP环境部署WordPress博客

  • 环境版本:
    • Linux:Centos7.9
    • Nginx:1.20.1(Centos)
    • MySQL:MySQL5.7
    • PHP:PHP7.4
    • WordPress 6.2

一、关于LNMP环境

又叫LEMP环境

  • L指→ Linux系统
  • N指→ Nginx提供web服务
  • M指→ MysqlMariaDB提供数据库存储服务
  • P指→ PHP提供后台以及web动态处理

二、关于WordPress博客

摘自百度百科

WordPress是使用PHP语言开发的博客平台,用户可以在支持PHPMySQL数据库的服务器上架设属于自己的网站。也可以把WordPress当作一个内容管理系统(CMS)来使用。

三、部署LAMP环境

1.部署Linux系统

安装过程省略点我跳转Linux的安装

一定要配置yum源和epel源!

2.部署Nginx环境

[root@master ~]# yum install -y nginx

A.创建网页目录(用于存放WordPress站点)

[root@master ~]# mkdir -p /www/wwwroot/boke.wsjj.top	#boke.wsjj.top自定义文件夹名字,请勿和我用一样的

B.给网页数据目录权限

[root@wsjj ~]# chmod 757 -R /www/wwwroot/

C.创建基于虚拟主机的网页

关于Nginx虚拟主机详细教程点我跳转

[root@master ~]# vim /etc/nginx/conf.d/boke.conf
[root@master ~]# cat /etc/nginx/conf.d/boke.conf
server {
   listen 80;	#指定监听端口
   server_name boke.wsjj.top;	#指定网站名
   access_log /var/log/nginx/boke_access.log main;		#指定访问日志,和记录格式
   error_log /var/log/nginx/boke_error.log error;		#指定错误日志和记录格式

   location / {	
       root /www/wwwroot/boke.wsjj.top;		#指定网站数据目录
       index index.html index.php;		#指定首页
   }
   location ~ \.php$ {	#配置php相关配置
       root           /www/wwwroot/boke.wsjj.top;	#php的目录
       fastcgi_pass   127.0.0.1:9000;	#监听IP和端口
       fastcgi_index  index.php;
       fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;		#$document_root是Nginx里自带的一个变量,用于传递上面的目录
       include        fastcgi_params;
   }
}

配置文件,加载到配文件内

root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
http {
    ..............	#配置文件并不完整,请勿动其他地方
    include /usr/local/nginx/conf.d/boke.conf;		#因我们在子配置文件定义了日志记录格式,务必把这条记录放在定义main日志的后面!
}

D.暂时不要启动Nginx

因为还没安装配置PHP

3.部署PHP7.4

A.添加EPELREMI存储库

[root@master ~]# yum install -y epel-release
[root@master ~]# yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm

B.安装PHP7.4

[root@master ~]# yum-config-manager --enable remi-php74

如果提示没有yum-config-manager这个命令请安装yum install -y yum-utils

[root@master ~]# yum install -y php  php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json php-redis

C.查看PHP版本信息

[root@master ~]# php -version
PHP 7.4.33 (cli) (built: Feb 14 2023 09:31:03) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies

D.优化PHP(可选的)

优化进程
[root@master ~]# vim /etc/php-fpm.d/www.conf
........	#上面内容省略,不代表配置文件就是这样子
listen = 127.0.0.1:9000		#默认监听本机IP+9000端口
pm.max_children = 50		#允许启动的最多的进程数
pm.start_servers = 8		#启动时,默认启动的进程数
pm.min_spare_servers = 8	#最小空闲进程数
pm.max_spare_servers = 16	#最大空闲进程数
pm.max_requests = 4096		#最大请求
........	#下面内容省略,不代表配置文件就是这样子
修改日志记录等级
[root@master ~]# vim /etc/php-fpm.conf

error_log = /var/log/php-fpm/error.log	#默认错误日志路径
log_level = error	#默认等级太低,避免记录一些不必要的东西

E.启动PHPNginx

[root@localhost ~]# systemctl start php-fpm
[root@localhost ~]# systemctl enable php-fpm

[root@master ~]# systemctl start nginx
[root@master ~]# systemctl enable nginx

4.部署MySQL5.7

A.创建文件夹

[root@master ~]# mkdir /mysql57

B.下载MySQL软件包

[root@master ~]# wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.41-1.el7.x86_64.rpm-bundle.tar
如果提示没有wget命令请安装
[root@master ~]# yum install -y wget

C.解压软件包

[root@master ~]# tar xf mysql-5.7.41-1.el7.x86_64.rpm-bundle.tar -C /mysql57

D.创建本地yum仓库

[root@master ~]# yum install -y createrepo
[root@master ~]# createrepo /mysql57
Spawning worker 0 with 10 pkgs
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
a.创建yum
[root@master ~]# vim /etc/yum.repos.d/mysql.repo

[mysql5.7]
name=mysql5.7
baseurl=file:///mysql57
enabled=1
gpgcheck=0

E.安装MySQL5.7

[root@master ~]# yum install -y mysql-comm*

F.开启二进制日志(可忽略)

[root@master ~]# vim /etc/my.cnf

[mysqld]
server_id=10
log_bin=master

F.启用Mysql服务并设置开机自启动

[root@master ~]# systemctl start mysqld
[root@master ~]# systemctl enable mysqld

G.修改MySQLroot密码

a.查看日志获取临时密码
[root@master ~]# cat /var/log/mysqld.log | grep -i password
2023-04-10T11:04:33.118928Z 1 [Note] A temporary password is generated for root@localhost: Y?.Ce5duxf7n		#临时密码就是最后的随机数+英文字母
b.使用临时密码登录,然后更改密码
[root@master ~]#  mysql -uroot -p
Enter password: Y?.Ce5duxf7n	#输入密码的时候不会明文显示哦!
mysql> set password for 'root'@'localhost' = password("WWW.1.com");		#这里修改密码为WWW.1.com
Query OK, 0 rows affected, 1 warning (0.01 sec)

H.创建WordPress用到的数据库

mysql> create database wordpress charset utf8mb4;
Query OK, 1 row affected (0.00 sec)

I.创建WordPress用到的数据库用户

创建一个名为wordpress的用户,密码为WWW.1.com,并且这个用户对wordpress库拥有全部权限。

mysql> grant all on wordpress.* to 'wordpress'@'localhost' identified by 'WWW.1.com';
Query OK, 0 rows affected, 1 warning (0.01 sec)

J.退出数据库

mysql> exit
Bye
[root@master ~]# 

四、部署WordPress6.2博客

1.下载WordPress软件

[root@wsjj ~]# wget https://cn.wordpress.org/latest-zh_CN.tar.gz

2.解压

[root@wsjj ~]# tar xf latest-zh_CN.tar.gz 
[root@wsjj ~]# ls
latest-zh_CN.tar.gz  wordpress

3.移动文件到网页目录

[root@wsjj ~]# mv ./wordpress/* /www/wwwroot/boke.wsjj.top/

4.浏览器测试

wp1

如果无法访问,请检查云服务商防火墙是否已经开启80端口,或者系统防火墙SElinux是否关闭

wp2

成功进入配置页面

wp3

5.开始网页端配置

A.连接数据库

wp4

B.开始安装

wp5

wp6

wp7

wp8

C.进入后台

wp9

D.进入前台

wp10

五、解决安装插件安装提示“要执行请求的操作”

1.编辑配置文件

[root@wsjj ~]# chmod -R 757 /www/wwwroot/boke.wsjj.top/

在配置文件wp-config.php末尾,加上以下三行内容

vim /www/wwwroot/boke.wsjj.top/wp-config.php	#自行修改自己的网页目录
define("FS_METHOD", "direct");
define("FS_CHMOD_DIR", 0777);
define("FS_CHMOD_FILE", 0777);