要帮你准确解决 Ubuntu 下 PHP 配置错误,需要先看具体报错信息。不过我可以先给你一套常见原因 + 排查步骤,基本能覆盖 90% 的情况。
php -v
如果报错,说明 CLI PHP 配置有问题。
看 Apache / Nginx 错误日志:
# Apache
sudo tail -n 50 /var/log/apache2/error.log
# Nginx
sudo tail -n 50 /var/log/nginx/error.log
php.ini 文件位置不对Ubuntu 常见路径:
# CLI
/etc/php/8.1/cli/php.ini
# Apache
/etc/php/8.1/apache2/php.ini
# Nginx + PHP-FPM
/etc/php/8.1/fpm/php.ini
⚠️ 改错文件是不会生效的
修改后重启:
sudo systemctl restart apache2
# 或
sudo systemctl restart php8.1-fpm
php -m | grep xxx
如果缺少模块:
sudo apt install php8.1-mysql php8.1-curl php8.1-mbstring
sudo systemctl restart apache2
测试配置:
php -l /etc/php/8.1/cli/php.ini
或启动时报:
PHP Warning: Module already loaded
说明 extension= 重复加载,删掉多余的。
Ubuntu 可能装了多个 PHP:
update-alternatives --list php
切换版本:
sudo update-alternatives --set php /usr/bin/php8.1
典型错误:
File not found.
检查:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
}
并确保:
sudo systemctl status php8.1-fpm
请把以下任意一个发出来,我能精准帮你:
php -v 输出你可以直接贴:
“我改了 xxx,然后报了这个错:xxx”