在 Ubuntu 上安装 LNMP 扩展的完整步骤
一 准备与版本确认
sudo apt update && sudo apt upgrade -yapt policy php(按需选择如 PHP 7.4/8.0/8.1/8.2)二 安装与启动各组件
sudo apt install -y nginxsudo systemctl start nginx && sudo systemctl enable nginxsudo apt install -y mysql-server
sudo mysql_secure_installationsudo apt install -y mariadb-server mariadb-client
sudo mysql_secure_installationsudo apt install -y php-fpm php-mysqlsudo apt install -y php-curl php-gd php-mbstring php-xml php-zip php-clisudo systemctl start php7.4-fpm && sudo systemctl enable php7.4-fpmsudo ufw allow 'Nginx Full' && sudo ufw enable三 配置 Nginx 处理 PHP
sudo nano /etc/nginx/sites-available/defaultserver {
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;
}
}
sudo nginx -tsudo systemctl reload nginx四 验证与常见问题
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.phphttp://服务器IP/info.php,应看到 PHP 信息页php -v 与 systemctl status php7.4-fpmfastcgi_pass 指向的路径与 /etc/php/7.x/fpm/pool.d/www.conf 中的 listen 一致(常见为 /run/php/php7.4-fpm.sock 或 /var/run/php/php7.4-fpm.sock)。.php 交给 PHP-FPM,检查 location ~ \.php$ 配置是否存在且包含 include snippets/fastcgi-php.conf;。sudo chown -R www-data:www-data /var/www/html)。