在 Debian 中配置 PHP,通常分为 安装 PHP、配置 PHP 本身、与 Web 服务器(Apache/Nginx)配合、以及常见调优 几个部分。下面给你一份较完整的实操指南(以 Debian 11/12 为例,PHP 8.x 为主)。
sudo apt update
sudo apt upgrade -y
sudo apt install php php-cli -y
查看版本:
php -v
sudo apt install apache2 libapache2-mod-php -y
sudo a2enmod php
sudo systemctl restart apache2
测试:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
浏览器访问:http://服务器IP/info.php
sudo apt install nginx php-fpm -y
ls /run/php/
# 类似:php8.2-fpm.sock
编辑站点配置:
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/php8.2-fpm.sock;
}
}
重启服务:
sudo systemctl restart nginx
sudo systemctl restart php8.2-fpm
PHP 配置文件通常位于:
/etc/php/8.2/
目录结构:
/etc/php/8.2/
├── cli/php.ini # 命令行
├── apache2/php.ini # Apache
└── fpm/php.ini # Nginx (PHP-FPM)
编辑示例:
sudo nano /etc/php/8.2/fpm/php.ini
; 上传文件大小
upload_max_filesize = 64M
post_max_size = 64M
; 执行时间
max_execution_time = 300
max_input_time = 300
; 内存限制
memory_limit = 256M
; 显示错误(开发环境)
display_errors = On
error_reporting = E_ALL
; 时区
date.timezone = Asia/Shanghai
修改后重启:
sudo systemctl restart php8.2-fpm
# 或
sudo systemctl restart apache2
sudo apt install php-mysql php-curl php-gd php-mbstring php-xml php-zip -y
查看已安装扩展:
php -m
sudo apt install php8.1 php8.2
切换 CLI 版本:
sudo update-alternatives --config php
info.phpdisplay_errorsopen_basedirwww-data 用户运行如果你能告诉我:
我可以给你更精准的配置示例。