centos

如何在centos上部署lnmp应用

小樊
48
2025-08-04 17:18:13
栏目: 智能运维

在CentOS上部署LNMP(Linux, Nginx, MySQL/MariaDB, PHP)应用涉及多个步骤。以下是一个基本的指南,帮助你在CentOS系统上设置LNMP环境。

1. 更新系统

首先,确保你的系统是最新的:

sudo yum update -y

2. 安装Nginx

  1. 添加Nginx仓库:

    sudo yum install epel-release -y
    sudo yum install nginx -y
    
  2. 启动Nginx并设置开机自启动:

    sudo systemctl start nginx
    sudo systemctl enable nginx
    
  3. 检查Nginx状态:

    sudo systemctl status nginx
    

3. 安装MySQL/MariaDB

安装MariaDB(推荐)

  1. 添加MariaDB仓库:

    sudo yum install https://yum.mariadb.org/MariaDB/mariadb-release-el7-11.noarch.rpm -y
    
  2. 安装MariaDB:

    sudo yum install mariadb-server mariadb -y
    
  3. 启动MariaDB并设置开机自启动:

    sudo systemctl start mariadb
    sudo systemctl enable mariadb
    
  4. 运行安全设置脚本:

    sudo mysql_secure_installation
    

安装MySQL

如果你更喜欢使用MySQL,可以按照以下步骤进行安装:

  1. 添加MySQL仓库:

    sudo yum install https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm -y
    
  2. 安装MySQL:

    sudo yum install mysql-community-server -y
    
  3. 启动MySQL并设置开机自启动:

    sudo systemctl start mysqld
    sudo systemctl enable mysqld
    
  4. 运行安全设置脚本:

    sudo mysql_secure_installation
    

4. 安装PHP

  1. 安装PHP及其常用扩展:

    sudo yum install php php-fpm php-mysqlnd php-gd php-mbstring php-xml php-pear php-bcmath -y
    
  2. 启动PHP-FPM并设置开机自启动:

    sudo systemctl start php-fpm
    sudo systemctl enable php-fpm
    
  3. 配置Nginx以使用PHP-FPM: 编辑Nginx配置文件(通常位于 /etc/nginx/nginx.conf/etc/nginx/conf.d/default.conf),添加以下内容:

    server {
        listen 80;
        server_name your_domain.com;
    
        root /var/www/html;
        index index.php index.html index.htm;
    
        location / {
            try_files $uri $uri/ =404;
        }
    
        location ~ \.php$ {
            include snippets/fastcgi-php.conf;
            fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include fastcgi_params;
        }
    }
    
  4. 重启Nginx以应用更改:

    sudo systemctl restart nginx
    

5. 配置防火墙

确保防火墙允许HTTP和HTTPS流量:

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

6. 部署你的应用

将你的PHP应用代码上传到 /var/www/html 目录下,或者你选择的任何其他目录。确保你的应用能够正确连接到数据库。

7. 测试

打开浏览器,访问你的服务器IP地址或域名,确保Nginx和PHP-FPM正常工作,并且你的应用能够正确显示。

通过以上步骤,你应该能够在CentOS上成功部署一个基本的LNMP环境。根据你的具体需求,可能还需要进行更多的配置和优化。

0
看了该问题的人还看了