下面按最常见的使用场景给你一个清晰、可落地的 Debian 部署 PHP 指南(以 Debian 11/12 为例,PHP + Nginx/Apache 两种方案都讲)。
sudo apt update
sudo apt upgrade -y
sudo apt install php php-cli php-fpm -y
查看版本:
php -v
Debian 12 默认已带 8.2,Debian 11 可用 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
sudo apt install php8.2 php8.2-fpm php8.2-cli -y
sudo apt install nginx -y
编辑站点配置:
sudo nano /etc/nginx/sites-available/default
关键配置:
server {
listen 80;
root /var/www/html;
index index.php index.html;
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php-fpm.sock;
}
}
测试并重载:
sudo nginx -t
sudo systemctl reload nginx
sudo apt install apache2 libapache2-mod-php -y
测试文件:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
访问:
http://服务器IP/info.php
sudo apt install php-mysql php-curl php-gd php-mbstring php-xml php-zip -y
重启 PHP-FPM:
sudo systemctl restart php-fpm
sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/html
sudo ufw allow 80
sudo ufw allow 443
sudo nano /var/www/html/index.php
内容:
<?php
echo "PHP 正常运行";
浏览器访问服务器 IP。
| 场景 | 建议 |
|---|---|
| 网站 | Nginx + PHP-FPM |
| API | PHP CLI / Swoole |
| Laravel | Composer + Nginx |
| 内网工具 | Apache 即可 |
如果你愿意,可以告诉我:
我可以直接给你完整配置文件。