一键部署lnmp脚本

1. 脚本内容编写如下

#!/bin/bash
nginx_install() {
    
    
    if [ -f /root/nginx-1.18.0.tar.gz ];then
        echo "nginx源码包存在,开始解压..."
        cd /root && tar xzf nginx-1.18.0.tar.gz
        echo "开始安装nginx编译所需环境"
        yum -y install gcc pcre-devel openssl-devel > /dev/null
        echo "开始检测编译安装nginx"
        cd nginx-1.18.0 && ./configure && make && make install
        echo "开始修改nginx配置文件"
        sed -i '45 s/index.html/index.php/' /usr/local/nginx/conf/nginx.conf
        sed -i '65,71 s/#//' /usr/local/nginx/conf/nginx.conf
        sed -i '69 s/\/scripts/$document_root/' /usr/local/nginx/conf/nginx.conf
        echo "创建测试页面"
        echo "<?php phpinfo(); ?>" > /usr/local/nginx/html/index.php
    else
        echo "nginx源码包不存在,请上传!!!"
        exit
    fi
}
mysql_insatll() {
    
    
    rpm -qa|grep -q mariadb-server
    if [ $? -eq 0 ];then
        echo "mysql服务已经安装"
    else
        echo "mysql服务未安装,现在开始安装"
        yum -y install mariadb mariadb-server > /dev/null
    fi
}
php_install() {
    
    
    num=$(rpm -qa|grep -c php)
    if [ $num -eq 7 ];then
        echo "php组件已经全部安装"
    else
        echo "缺少PHP组件,现在开始安装"
        yum -y install php php-mysql php-fpm php-gd  > /dev/null
    fi
}
start_nginx() {
    
    
    /usr/local/nginx/sbin/nginx
    ss -ntlp|grep -wq 80
    if [ $? -eq 0 ];then
        echo "nginx服务启动成功"
    else
        echo "nginx服务启动失败!!!"
    fi
}
start_mysql() {
    
    
    systemctl start mariadb
    ss -ntlp|grep -wq 3306
    if [ $? -eq 0 ];then
        echo "mysql服务启动成功"
    else
        echo "mysql服务启动失败!!!"
    fi
}
start_php() {
    
    
    systemctl start php-fpm
    ss -ntlp|grep -wq 9000
    if [ $? -eq 0 ];then
        echo "php-fpm服务启动成功"
    else
        echo "php-fpm服务启动失败!!!"
    fi
}
echo "-----开始安装nginx-----"
nginx_install
echo "-----开始安装mysql-----"
mysql_insatll
echo "-----开始安装php-----"
php_install
echo "-----开启nginx服务-----"
start_nginx
echo "-----开启mysql服务-----"
start_mysql
echo "-----开启php服务-----"
start_php

2. 执行脚本测试

sh lnmp.sh

3. 打开浏览器输入ip访问PHP测试页面成功

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/m0_46674735/article/details/112506094