在 Debian 上搭建 LNMP(Linux + Nginx + MySQL/MariaDB + PHP) 环境,下面是通用、稳定、适合生产环境的做法(以 Debian 11/12 为例)。
sudo apt update
sudo apt upgrade -y
sudo apt install nginx -y
启动并设置开机自启:
sudo systemctl enable nginx
sudo systemctl start nginx
验证:
systemctl status nginx
浏览器访问服务器 IP,看到 Welcome to nginx 即成功。
sudo apt install mariadb-server -y
初始化安全配置:
sudo mysql_secure_installation
按提示设置 root 密码、删除测试库等。
登录测试:
sudo mysql -u root -p
Debian 12 默认 PHP 8.2,11 默认 7.4 或 8.2(取决于源)。
sudo apt install php-fpm php-mysql php-cli php-curl php-gd php-mbstring php-xml php-zip -y
查看 PHP 版本:
php -v
确认 php-fpm 运行:
systemctl status php8.2-fpm
(版本号按实际调整)
编辑站点配置:
sudo nano /etc/nginx/sites-available/default
示例配置(重点):
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/php8.2-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
测试并重载 Nginx:
sudo nginx -t
sudo systemctl reload nginx
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
浏览器访问:
http://服务器IP/info.php
确认能看到 PHP 信息页 ✅
测试完成后删除:
sudo rm /var/www/html/info.php
sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/html
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d your_domain
fastcgi_pass 路径错误检查:
ls /run/php/
systemctl status php8.2-fpm
location ~ \.php$ 未配置✅ 已成功搭建:
如果你需要:
可以直接告诉我你的 Debian 版本和使用场景。