下面给你一份在 Debian 上搭建 PHP 运行环境的常见做法,覆盖 CLI + Web(Nginx/Apache) 两种场景,适合新手到生产环境参考。
sudo apt update
sudo apt upgrade -y
查看 Debian 版本:
cat /etc/debian_version
sudo apt install -y php php-cli php-fpm php-common \
php-mysql php-curl php-gd php-mbstring php-xml php-zip
查看 PHP 版本:
php -v
Debian 12 默认是 PHP 8.2
如需 PHP 8.3 / 8.1,可用sury源(下面有说明)
sudo apt install -y nginx
PHP-FPM 已随 php-fpm 安装,查看服务:
systemctl status php8.2-fpm
实际版本号可能不同(如 php8.1-fpm)
编辑站点配置:
sudo nano /etc/nginx/sites-available/default
示例配置:
server {
listen 80;
server_name localhost;
root /var/www/html;
index index.php index.html;
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
}
}
测试并重载:
sudo nginx -t
sudo systemctl reload nginx
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
浏览器访问:
http://服务器IP/info.php
sudo apt install -y apache2 libapache2-mod-php
Apache 会自动启用 PHP。
测试:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
访问:
http://服务器IP/info.php
Debian 默认源版本较旧,可使用 Sury 源:
sudo apt install -y lsb-release ca-certificates apt-transport-https
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list
sudo apt update
安装 PHP 8.3:
sudo apt install -y php8.3 php8.3-fpm php8.3-mysql
fastcgi_pass 路径libapache2-mod-php 已安装sudo chown -R www-data:www-data /var/www/html
sudo systemctl enable nginx php8.2-fpm
✅ Debian + Nginx + PHP-FPM + MariaDB
✅ PHP 版本:8.2 / 8.3
✅ 使用 php-fpm 而非 mod_php
如果你告诉我:
我可以直接给你一套可复制的完整命令。