温馨提示×

Debian LNMP如何部署

小樊
66
2025-06-05 10:31:01
栏目: 智能运维

在Debian系统上部署LNMP(Linux, Nginx, MySQL/MariaDB, PHP)环境,可以按照以下步骤进行:

1. 更新系统

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

sudo apt update
sudo apt upgrade -y

2. 安装Nginx

安装Nginx作为Web服务器:

sudo apt install nginx -y

启动并启用Nginx服务:

sudo systemctl start nginx
sudo systemctl enable nginx

3. 安装MySQL/MariaDB

你可以选择安装MySQL或MariaDB。这里以MariaDB为例:

sudo apt install mariadb-server mariadb-client -y

启动并启用MariaDB服务:

sudo systemctl start mariadb
sudo systemctl enable mariadb

运行安全脚本以提高安全性:

sudo mysql_secure_installation

4. 安装PHP

安装PHP及其常用扩展:

sudo apt install php-fpm php-mysql -y

配置PHP-FPM以使用Nginx: 编辑/etc/php/7.4/fpm/pool.d/www.conf文件,找到以下行并取消注释:

;listen = /run/php/php7.4-fpm.sock

改为:

listen = /run/php/php7.4-fpm.sock

重启PHP-FPM服务:

sudo systemctl restart php7.4-fpm

5. 配置Nginx以支持PHP

编辑Nginx的默认站点配置文件:

sudo nano /etc/nginx/sites-available/default

修改以下内容:

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    root /var/www/html;
    index index.php index.html index.htm index.nginx-debian.html;

    server_name _;

    location / {
        try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.4-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~ /\.ht {
        deny all;
    }
}

保存并退出编辑器,然后测试Nginx配置:

sudo nginx -t

如果没有错误,重新加载Nginx服务:

sudo systemctl reload nginx

6. 创建一个简单的PHP文件进行测试

创建一个简单的PHP文件来测试你的设置:

echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php

在浏览器中访问http://your_server_ip/info.php,你应该能看到PHP信息页面。

7. 配置防火墙(可选)

如果你使用的是UFW防火墙,可以允许HTTP和HTTPS流量:

sudo ufw allow 'Nginx Full'

8. 安装SSL证书(可选)

你可以使用Let’s Encrypt来安装免费的SSL证书:

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d your_domain.com

按照提示完成证书的安装和配置。

现在,你的Debian系统上已经成功部署了LNMP环境。你可以开始开发和部署你的Web应用程序了。

0