“Ubuntu 上 PHP 报错”这个问题比较宽泛,我需要先说明常见原因分类,再给你排查方法。如果你能贴出具体报错信息,我可以更精准地帮你定位。
报错示例:
php: command not found
原因:
解决:
sudo apt update
sudo apt install php-cli
php -v
现象:
.php 文件原因:
Apache 解决:
sudo apt install libapache2-mod-php
sudo a2enmod php
sudo systemctl restart apache2
Nginx 解决:
sudo apt install php-fpm
并在 nginx 配置中:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php-fpm.sock;
}
报错示例:
Parse error: syntax error, unexpected '?' in ...
原因:
解决:
php -v
sudo apt install php8.1
报错示例:
Class 'mysqli' not found
解决:
sudo apt install php-mysql
sudo systemctl restart apache2
常见扩展:
php-mysqlphp-curlphp-mbstringphp-xmlphp-zip报错示例:
Permission denied
解决:
sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/html
现象:
解决(开发环境):
编辑 php.ini:
display_errors = On
error_reporting = E_ALL
请执行以下命令并贴出结果:
php -v
which php
sudo systemctl status apache2
sudo systemctl status nginx
以及:
Ubuntu 上 PHP 报错,90% 是:没装 PHP / 没配 Web 服务 / 缺扩展 / 版本不对
如果你愿意,把具体报错截图或文字发给我,我可以直接告诉你改哪里 ✅