LNMP分布式搭建

一、准备三台主机

192.168.100.11 mysql

192.168.100.12 nginx

192.168.100.13 php

二、关闭防火墙及安全策略

systemctl stop firewalld

setenforce 0

三、安装nginx(192.168.100.11)

1、添加nginx源

vim /etc/yum.repos.d/nginx.repo

nginx-stable

name=nginx stable repo

baseurl=http://nginx.org/packages/centos/$releasever/$basearch/

gpgcheck=0

enabled=1

2、yum下载nginx

yum install nginx -y #--安装nginx

nginx -v #--查看nginx版本

3、启动nginx

systemctl start nginx.service

systemctl enable nginx.service

四、安装mysql(192.168.100.12)

1、安装mysql

yum remove mariadb* -y

2、配置

cd /etc/yum.repos.d

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

#---解析主机地址,使用阿里源

yum -y install mysql57-community-release-el7-10.noarch.rpm

#--下载mysql源

sed -i 's/gpgcheck=1/gpgcheck=0/' mysql-community.repo

#--修改源文件

yum -y install mysql-community-server

#--安装mysql

3、启动mysql

systemctl start mysqld.service

systemctl enable mysqld.service

4、获取mysql初始密码

grep "password" /var/log/mysqld.log | awk '{print $NF}'

#--在日志文件中找出root用户的初始密码

5、登录mysql

mysql -uroot -p

Enter password: #输入初始密码 Q3ua.n-36/-R

ALTER USER 'root'@'localhost' IDENTIFIED BY 'Admin@123'; #更改密码

yum -y remove mysql57-community-release-el7-10.noarch #--卸载mysql自动更新

五、安装php

1、安装php

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

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

#--失败就多试几次

yum -y install php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-gd php72w-mbstring php72w-pdo php72w-xml php72w-fpm php72w-mysqlnd php72w-opcache

2、启动php

systemctl start php-fpm

systemctl enable php-fpm

3、配置php

useradd -M -s /sbin/nologin php #--创建php用户

vim /etc/php.ini

date.timezone = Asia/Shanghai

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

user = php

group = php

listen = 192.168.80.12:9000

listen.allowed_clients = 192.168.80.10

六、配置nginx支持php

cd /etc/nginx/conf.d

vim default.conf

......

location ~ \.php$ {

root /www;

fastcgi_pass 192.168.80.12:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME document_rootfastcgi_script_name; # $document_root 和 root 属性一样

include fastcgi_params;

}

systemctl restart nginx

vim /www/index.php

<?php

phpinfo();

?>

vim /www/test.php

<?php

$link=mysqli_connect('192.168.80.11','root','Admin@123');

if($link) echo "<h1>Success!!</h1>";

else echo "Fail!!";

?>

相关推荐
xuanzdhc2 小时前
Linux 基础IO
linux·运维·服务器
愚润求学2 小时前
【Linux】网络基础
linux·运维·网络
bantinghy3 小时前
Linux进程单例模式运行
linux·服务器·单例模式
小和尚同志4 小时前
29.4k!使用 1Panel 来管理你的服务器吧
linux·运维
帽儿山的枪手4 小时前
为什么Linux需要3种NAT地址转换?一探究竟
linux·网络协议·安全
shadon1789 天前
回答 如何通过inode client的SSLVPN登录之后,访问需要通过域名才能打开的服务
linux
小米里的大麦9 天前
014 Linux 2.6内核进程调度队列(了解)
linux·运维·驱动开发
Cachel wood9 天前
Spark教程6:Spark 底层执行原理详解
大数据·数据库·分布式·计算机网络·spark
算法练习生9 天前
Linux文件元信息完全指南:权限、链接与时间属性
linux·运维·服务器
忘了ʷºᵇₐ9 天前
Linux系统能ping通ip但无法ping通域名的解决方法
linux·服务器·tcp/ip