在Linux中进行LNMP搭建(非常详细)

笔者的LNMP指的是:Linux  Nginx  MariaDB  PHP 。MariaDB与MySQL基本相同,但也有不同之处,如果采用的数据库是MySQL也可借鉴。
(本教程适合刚刚开始学习Linux的小白)

搭建LNMP步骤:

(1) 关闭selinux(由于seLinux较强,刚开始搭建LNMP建议关掉)

setenforce  0(临时关闭)

getenforce(查看是否关闭,如显示disabled则已经关闭)


sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config(永久关闭,可以不用重启)

(2)关闭防火墙

systemctl stop firewalld

systemctl disable firewalld

(3)卸载nginx

yum remove nginx  -y(如果原来有nginx卸载掉,重新装)

rpm -e nginx

(4)配置yum源

rpm -qa yum-plugin-priorities(查询是否有yum源工具包)

yum install yum-plugin-priorities -y(如没有则执行此条命令,安装配置yum源优先级工具)

 vim /etc/yum.repos.d/nginx.repo(配置yum源优先级,把以下内容写入该文件)

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
priority=1

(5)安装nginx

yum install nginx -y(从nginx官方下载,如不配置上面的优先级默认从centos的官方下载)

nginx -v(查看nginx版本)

(6)给运行的Nginx进程配置用户

useradd -u1111 www -s /sbin/nologin -M(用户为1111,属于www组)

egrep "^user" /etc/nginx/nginx.conf(查看nginx属于的用户)

sed -i '/^user/c user www;' /etc/nginx/nginx.conf(设置nginx属于www用户)

egrep "^user" /etc/nginx/nginx.conf(查看是否已经更改)

systemctl start nginx (开始运行nginx)

systemctl enable nginx(开机自启动nginx)

netstat -lntup|grep nginx(查看是否有80端口)

(7)本地测试

curl 127.0.0.1(本地测试)

如果出现 Thanks you for  using nginx等话语则显示安装nginx成功。

或者在浏览器上输入127.0.0.1也可以

(8)配置php安装源

yum install epel-release -y(安装epel源,以下内容会依赖所以先把它下载安装)

wget https://mirror.webtatic.com/yum/el7/webtatic-release.rpm --no-check-certificate

(/etc/yum.repos.d/webtatic.repo以上俩步骤就是配置了此文件)

rpm -Uvh webtatic-release.rpm

rpm -ql epel-release

rpm -ql webtatic-release-7-3

#PHP下载地址:
https://us-east.repo.webtatic.com/yum/el7/x86_64/
https://uk.repo.webtatic.com/yum/el7/x86_64/

(9)卸载PHP及相关插件(如果以前没有安装过可以不执行此步骤)

rpm -e $(rpm -qa|grep php)
rpm -qa|grep php

(10)安装PHP及相关插件

yum install php71w php71w-cli php71w-common php71w-devel php71w-embedded php71w-gd -y
yum install php71w-mcrypt php71w-mbstring php71w-pdo php71w-xml php71w-fpm php71w-mysqlnd -y
yum install php71w-opcache php71w-pecl-memcached php71w-pecl-redis php71w-pecl-mongodb -y

(注意:这三条命令一条一条执行,不可以三条一起执行)

(8)安装php7版本的软件【本地】

tar xf php.zip(需要提前下载好软件,然后执行下面的安装)

yum localinstall php/*.rpm -y

(9)配置php-fpm用户与Nginx的运行用户保持一致

sed -i '/^user/c user = www' /etc/php-fpm.d/www.conf 

sed -i '/^group/c group = www' /etc/php-fpm.d/www.conf

egrep "^user|^group" /etc/php-fpm.d/www.conf(查看是否配置成功)

(10)启动php-fpm,并将其加入开机自启动
 systemctl start php-fpm
 systemctl enable php-fpm

netstat -lntup|grep php-fpm

(11)安装Mariadb数据库
yum install mariadb-server mariadb -y
systemctl start mariadb

systemctl enable mariadb

netstat -lntup|grep mysql

输入mysql 看是否安装成功

(12)给Mariadb配置登录密码
 mysqladmin password 'aaa123'
 mysql -uroot -paaa123
Welcome to the MariaDB monitor. Commands end with ; or \g.
(13)配置虚拟主机配置文件 01_blog.etiantian.org.conf

cd /etc/nginx/conf.d
 gzip default.conf
 vim 01_blog.etiantian.org.conf

 

location ~ \.php$ {
root /data/blog;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}(把这些内容放入以上文件)

[root@oldboy conf.d]# nginx -t(测试语法是否正确,如显示一下则成功)
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
 systemctl reload nginx
systemctl reload nginx

创建站点目录
mkdir -p /data/blog
chown -R www.www /data/blog

(14)测试PHP服务:
[root@oldboy conf.d]# cd /data/blog/
cat >test.php<<EOF
<?php
phpinfo();
?>
EOF

[root@oldboy blog]# cat test.php
<?php
phpinfo();
?>

(如果出现php页面则配置正确)

 

测试php连接mysql:
vim /data/blog/test_mysql.php

<?php
$servername = "localhost";
$username = "root";
$password = "aaa123";
// 创建连接
$conn = mysqli_connect($servername, $username, $password);
// 检测连接
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
echo "php连接MySQL数据库成功";
?>

在浏览器中输入自己的虚拟机IP地址显示“php连接MySQL数据库成功”则连接数据库成功。自此搭建完成,以下部分为笔者安装了一个博客网站(需提前下载好)比较简单,也是可以测试数据库是否安装成功,如果成功,在创建博客网站之时在数据库会创建较多表格。

 

 

安装wordpress软件
[root@oldboy blog]#cd /data/blog
[root@oldboy blog]# mv wordpress/* .
[root@oldboy blog]# unzip latest-zh_CN.zip
[root@oldboy blog]# chown -R www.www /data/blog

数据库:test
用户:root
密码:aaa123
主机:localhost

创建数据库和用户:
[root@oldboy blog]# mysql -uroot -poldboy123
MariaDB [(none)]> create database blog;
MariaDB [(none)]> grant all on blog.* to blog@'localhost' identified by 'aaa123';
MariaDB [(none)]> flush privileges;

 

 

 

posted @ 2021-08-05 17:49  小太阳0626  阅读(1226)  评论(0)    收藏  举报