温馨提示×

LNMP如何部署Debian

小樊
49
2026-08-14 21:00:59
栏目: 智能运维

下面给你一个**在 Debian 系统上部署 LNMP(Linux + Nginx + MySQL/MariaDB + PHP)**的完整、实战型流程,适用于 Debian 11 / 12,服务器或云主机均可。


一、准备环境

1. 更新系统

apt update && apt upgrade -y

2. 安装常用工具

apt install -y curl wget unzip vim

二、安装 Nginx

1. 安装 Nginx

apt install -y nginx

2. 启动并设置开机自启

systemctl enable nginx
systemctl start nginx

3. 测试

浏览器访问服务器 IP:

http://服务器IP

看到 Welcome to nginx 即成功。


三、安装 MySQL / MariaDB

1. 安装 MariaDB(推荐)

apt install -y mariadb-server

2. 启动并设置开机自启

systemctl enable mariadb
systemctl start mariadb

3. 安全初始化

mysql_secure_installation

按提示操作:

  • 设置 root 密码 ✅
  • 移除匿名用户 ✅
  • 禁止 root 远程登录 ✅
  • 删除 test 数据库 ✅

四、安装 PHP

1. 安装 PHP 及常用扩展

apt install -y php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip

Debian 12 默认 PHP 8.2
Debian 11 默认 PHP 7.4

2. 查看 PHP 版本

php -v

3. 确认 PHP-FPM 运行

systemctl status php*-fpm

五、配置 Nginx 支持 PHP

1. 新建站点配置

vim /etc/nginx/sites-available/example.conf

示例配置(重点):

server {
    listen 80;
    server_name your_domain_or_ip;

    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/php-fpm.sock;
    }

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

2. 启用配置

ln -s /etc/nginx/sites-available/example.conf /etc/nginx/sites-enabled/

3. 删除默认配置(可选)

rm /etc/nginx/sites-enabled/default

4. 测试并重载 Nginx

nginx -t
systemctl reload nginx

六、测试 PHP

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

浏览器访问:

http://服务器IP/info.php

✅ 看到 PHP 信息页面即 LNMP 部署成功。


七、配置防火墙(如有)

ufw allow 80
ufw allow 443
ufw reload

八、常见问题排查

1. PHP 不解析

  • 检查 fastcgi_pass 路径是否正确
  • 查看 PHP-FPM 状态
systemctl status php*-fpm

2. Nginx 403

  • 检查目录权限
chown -R www-data:www-data /var/www/html

九、可选优化

  • ✅ 安装 Redis / Memcached
  • ✅ 配置 HTTPS(Let’s Encrypt)
  • ✅ 使用 PHP 多版本共存
  • ✅ 数据库远程访问配置

十、总结

✅ 你现在拥有:

  • Debian
  • Nginx
  • MariaDB
  • PHP-FPM

一个标准 LNMP 环境已部署完成 ✅

如果你需要:

  • 宝塔 / aaPanel
  • Docker 部署 LNMP
  • 生产环境优化
  • WordPress / Laravel 部署

告诉我你的使用场景,我可以给你定制方案。

0