Centos Stream 8安装LNMP环境+WordPress

参考自阿里云搭建教程
Nginx版本: Nginx/1.20.2
MySQL版本:MySQL 8.0.26
PHP版本:PHP 7.3.20

安装LNMP环境

一、查看防火墙状态,然后关闭防火墙,关闭SELinux

运行systemctl status firewalld命令查看当前防火墙的状态。

systemctl status firewalld

在这里插入图片描述
如果防火墙的状态参数是inactive,则防火墙为关闭状态。
如果防火墙的状态参数是active,则防火墙为开启状态。本示例中防火墙为开启状态,因此需要关闭防火墙。
关闭防火墙。如果防火墙为关闭状态可以忽略此步骤。
如果您想临时关闭防火墙,运行命令systemctl stop firewalld。

systemctl stop firewalld

如果您想永久关闭防火墙,运行命令systemctl disable firewalld。

systemctl disable firewalld

运行getenforce命令查看SELinux的当前状态。

getenforce

在这里插入图片描述
如果SELinux状态参数是Disabled,则SELinux为关闭状态。
如果SELinux状态参数是Enforcing,则SELinux为开启状态。本示例中SELinux为开启状态,因此需要关闭SELinux。
关闭SELinux。如果SELinux为关闭状态可以忽略此步骤。
如果您想临时关闭SELinux,运行命令setenforce 0。

setenforce 0

如果您想永久关闭SELinux,运行命令vim /etc/selinux/config编辑SELinux配置文件。

vim /etc/selinux/config

回车后,把光标移动到SELINUX=enforcing这一行,按i键进入编辑模式,修改为SELINUX=disabled,按Esc键,然后输入:wq并按Enter键以保存并关闭SELinux配置文件。 最后重启系统使设置生效。

二、开始安装LNMP环境

安装Nginx
Nginx官方下载链接获取适用于CentOS 8系统的多版本的Nginx安装包
现在用的是 Nginx/1.20.2

dnf -y install http://nginx.org/packages/centos/8/x86_64/RPMS/nginx-1.20.2-1.el8.ngx.x86_64.rpm

在这里插入图片描述

查看Nginx版本

nginx -v

在这里插入图片描述
安装MySQL

dnf -y install @mysql

查看MySQL版本

mysql -V

在这里插入图片描述
安装PHP
添加并更新EPEI源

dnf -y install epel-release

在这里插入图片描述

dnf -y update epel-release

在这里插入图片描述

删除缓存的无用软件包并更新软件源

dnf clean all
dnf makecache

启用php:7.3模块

dnf module enable php:7.3

(现在使用的是PHP7.3,如果您需要使用PHP 7.4版本,需要先安装remi源。remi源安装命令为dnf -y install https://rpms.remirepo.net/enterprise/remi-release-8.rpm)

安装PHP相应的模块

dnf -y install php php-curl php-dom php-exif php-fileinfo php-fpm php-gd php-hash php-json php-mbstring php-mysqli php-openssl php-pcre php-xml libsodium

查看PHP版本

php -v

在这里插入图片描述

配置Nginx
查看Nginx配置文件的默认路径

cat /etc/nginx/nginx.conf

在http大括号内,查看include配置项。即配置文件的默认路径
在这里插入图片描述
在配置文件的默认路径下,备份默认配置文件

cd /etc/nginx/conf.d
cp default.conf default.conf.bak

修改默认配置文件

vim /etc/nginx/conf.d/default.conf

在location大括号内,修改以下内容

location / {
#将该路径替换为您的网站根目录。
root /usr/share/nginx/html;
#添加默认首页信息index.php。
index index.html index.htm index.php; }
去掉被注释的location ~ .phpKaTeX parse error: Expected 'EOF', got '#' at position 8: 大括号内容前的#̲,并修改大括号的内容。 loc… {
#将该路径替换为您的网站根目录。
root /usr/share/nginx/html;
#Nginx通过unix套接字与PHP-FPM建立联系,该配置与/etc/php-fpm.d/www.conf文件内的listen配置一致。
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
#将/scripts f a s t c g i s c r i p t n a m e 修 改 为 fastcgi_script_name修改为 fastcgiscriptnamedocument_root$fastcgi_script_name。
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
#Nginx调用fastcgi接口处理PHP请求。
include fastcgi_params; }

在这里插入图片描述
启动Nginx服务

systemctl start nginx
systemctl enable nginx

浏览器访问IP显示这个页面就正常了
在这里插入图片描述

配置MySQL
启动MySQL,并设置为开机自启动

systemctl enable --now mysqld

查看MySQL是否已启动

systemctl status mysqld

MySQL安全性操作并设置密码

mysql_secure_installation

命令运行后,根据命令行提示执行如下操作。 输入Y并回车开始相关配置。 选择密码验证策略强度,输入2并回车。
策略0表示低,1表示中,2表示高。建议您选择高强度的密码验证策略。

设置MySQL的新密码并确认。

输入Y并回车继续使用提供的密码。 输入Y并回车移除匿名用户。 设置是否允许远程连接MySQL。 不需要远程连接时,输入Y并回车。
需要远程连接时,输入N或其他任意非Y的按键,并回车。 输入Y并回车删除test库以及对test库的访问权限。 输入Y并回车重新加载授权表。

在这里插入图片描述
配置PHP

vi /etc/php-fpm.d/www.conf

找到user = apache和group = apache,将apache修改为nginx

在这里插入图片描述
新建phpinfo.php文件,用于展示PHP信息

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

输入

<?php echo phpinfo(); ?>

启动PHP-FPM

systemctl start php-fpm

浏览器输入IP/phpinfo.php访问显示以下页面正常
在这里插入图片描述
LNMP环境部署成功,测试访问LNMP平台成功后,用命令将phpinfo.php文件删除

rm -rf /usr/share/nginx/html/phpinfo.php

开始安装WordPress

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

mysql -uroot -p

为WordPress网站创建数据库,示例创建数据库名为wordpress

create database wordpress;

创建一个新用户管理WordPress库,提高安全性。
MySQL在5.7版本后默认安装了密码强度验证插件validate_password。您可以登录MySQL后查看密码强度规则。

show variables like "%password%";

创建新用户user,新用户密码为Aa123456

create user 'user'@'localhost' identified by 'Aa123456';

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

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

使配置生效。

flush privileges;

退出MySQL

exit;

进入Nginx网站根目录

cd /usr/share/nginx/html

下载WordPress压缩包,Wordpress官网可以下载最新安装包

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

解压WordPress压缩包

unzip latest-zh_CN.zip

将WordPress安装目录下的wp-config-sample.php文件复制到wp-config.php文件中,并将wp-config-sample.php文件作为备份。(这一步可以先不做,第一次进入会提示设置,做了方便一些)

cd /usr/share/nginx/html/wordpress
cp wp-config-sample.php wp-config.php

编辑wp-config.php文件

vim wp-config.php

按i键切换至编辑模式,根据已配置的WordPress数据库信息,修改MySQL相关配置信息,修改代码如下所示。
WordPress网站的数据信息将通过数据库的user用户保存在名为wordpress的数据库中。 MySQL 设置 -具体信息来自您正在使用的主机
WordPress数据库的名称
define('DB_NAME', 'wordpress');

MySQL数据库用户名
define('DB_USER', 'user');

MySQL数据库密码
define('DB_PASSWORD', 'Aa123456');

MySQL主机
define('DB_HOST', 'localhost');

在这里插入图片描述

修改Nginx配置文件

vi /etc/nginx/conf.d/default.conf

在location /大括号内,将root后的内容替换为WordPress根目录

在这里插入图片描述
重启Nginx服务

systemctl restart nginx

安装并登录WordPress网站。
使用浏览器访问IP,进入WordPress安装页面。
填写网站基本信息,然后单击安装WordPress。
填写信息参数说明:
站点标题:WordPress网站的名称。
用户名:登录WordPress时所需的用户名,请注意安全性。
密码:登录WordPress时所需的密码,建议您设置安全性高的密码。
您的电子邮件:用于接收通知的电子邮件。
单击登录。
输入在安装WordPress时设置的用户名和密码,然后单击登录。
成功进入您个人的WordPress网站
在这里插入图片描述
Nginx搭建WordPress下载主题、插件需要FTP解决办法,输入下面命令

chown -R nginx:nginx /usr/share/nginx/html/wordpress/

在这里插入图片描述

问题的根源在于wordpress目录没有nginx权限,加上去即可解决

apache应该是下面这个添加权限

chown -R www:www /yourwordpressdir

另外,如果有错误提示:
”chown: changing ownership of ‘wordpress目录.user.ini’: Operation not permitted“

说明你的wordpress根目录下的.user.ini文件有权限限制,只需用
chattr -i /yourwordpressdir/.user.ini

解锁权限,然后重新执行上述的chown命令即可。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值