在 Debian 上搭建 PHP 运行环境,通常分三种常见场景:命令行 PHP、PHP + Web 服务器(Apache/Nginx)、集成环境(懒人方案)。下面给你一套实用、可落地的做法。
sudo apt update
sudo apt upgrade -y
cat /etc/debian_version
适合跑脚本、定时任务:
sudo apt install php-cli php-common -y
验证:
php -v
sudo apt install apache2 libapache2-mod-php -y
sudo systemctl enable --now apache2
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
浏览器访问:
http://服务器IP/info.php
sudo apt install nginx php-fpm -y
php -v
# 例如 php8.2-fpm
编辑站点配置:
sudo nano /etc/nginx/sites-available/default
关键部分:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
}
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
sudo systemctl restart nginx php8.2-fpm
sudo apt install php-mysql php-curl php-gd php-mbstring php-xml php-zip -y
若使用 PHP 8.2,扩展名就是
php8.2-xxx
Debian 官方源版本偏旧,可用 SURY 源:
sudo apt install lsb-release ca-certificates apt-transport-https -y
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.3 php8.3-fpm -y
docker run -d -p 8080:80 php:8.3-apache
wget https://soft.lnmp.org/lnmp.tar.gz
| 问题 | 解决 |
|---|---|
| 页面下载 PHP 文件 | Web 服务未解析 PHP |
| 502 错误 | php-fpm 没启动或 sock 路径错 |
| 权限问题 | /var/www 属主设为 www-data |
如果你告诉我:
我可以直接给你一套精确命令。