温馨提示×

centos lnmp脚本编写入门

小樊
42
2026-01-04 07:37:11
栏目: 智能运维

在CentOS系统中编写一个LNMP(Linux, Nginx, MySQL/MariaDB, PHP)脚本可以帮助你自动化安装和配置这些服务。以下是一个简单的入门示例,展示了如何编写一个脚本来安装和配置这些组件。

请注意,这个脚本只是一个基础示例,实际使用时可能需要根据你的具体需求进行调整。此外,运行此类脚本需要具有root权限。

#!/bin/bash

# 更新系统
yum update -y

# 安装Nginx
yum install -y epel-release
yum install -y nginx
systemctl start nginx
systemctl enable nginx

# 安装MySQL/MariaDB
yum install -y mariadb-server mariadb
systemctl start mariadb
systemctl enable mariadb
mysql_secure_installation <<EOF
y
password
password
y
y
y
EOF

# 安装PHP
yum install -y php php-fpm php-mysqlnd
systemctl restart php-fpm
systemctl enable php-fpm

# 配置Nginx支持PHP
cat > /etc/nginx/conf.d/php.conf <<EOF
server {
    listen 80;
    server_name localhost;

    root /var/www/html;
    index index.php index.html index.htm;

    location ~ \.php$ {
        fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  \$document_root\$fastcgi_script_name;
        include        fastcgi_params;
    }
}
EOF

# 创建一个简单的PHP文件来测试
echo "<?php phpinfo(); ?>" | tee /var/www/html/index.php

# 重启Nginx以应用配置
systemctl restart nginx

echo "LNMP stack has been installed successfully!"

将上述脚本保存为 install_lnmp.sh,然后通过以下命令运行它:

chmod +x install_lnmp.sh
sudo ./install_lnmp.sh

这个脚本会执行以下操作:

  1. 更新系统软件包。
  2. 安装Nginx并启动服务。
  3. 安装MariaDB并启动服务,然后运行 mysql_secure_installation 来进行安全设置。
  4. 安装PHP及其MySQL扩展,并重启PHP-FPM服务。
  5. 配置Nginx以处理PHP文件。
  6. 创建一个简单的PHP文件来测试安装是否成功。
  7. 重启Nginx服务以应用新的配置。

请记住,这个脚本只是一个起点,你可能需要根据你的具体需求进行调整。例如,你可能需要配置防火墙规则来允许HTTP和HTTPS流量,或者你可能需要配置SSL证书来启用HTTPS。此外,对于生产环境,你应该考虑更多的安全措施和最佳实践。

0