在 Ubuntu 上调试 PHP 配置,通常可以从确认 PHP 版本、查看生效配置、开启错误显示、检查 Web 服务器配置几个方面入手。下面按步骤说明。
php -v
如果你用 Apache:
apache2 -v
如果你用 Nginx + PHP-FPM:
php-fpm -v
php -i | grep "Loaded Configuration File"
Web 环境(Apache/Nginx)可能使用不同的 php.ini。
php --ini
phpinfo();
或
grep -R "php.ini" /etc/apache2/
ls /etc/php/
例如:
/etc/php/8.1/fpm/php.ini
修改后重启:
sudo systemctl restart php8.1-fpm
sudo systemctl restart nginx
在 php.ini 中修改:
display_errors = On
display_startup_errors = On
error_reporting = E_ALL
log_errors = On
error_log = /var/log/php_errors.log
Apache:
sudo systemctl restart apache2
Nginx + FPM:
sudo systemctl restart php8.1-fpm
创建测试文件:
sudo nano /var/www/html/info.php
内容:
<?php
phpinfo();
浏览器访问:
http://localhost/info.php
可确认:
调试完后务必删除该文件。
sudo tail -f /var/log/php_errors.log
Apache 错误日志:
sudo tail -f /var/log/apache2/error.log
Nginx 错误日志:
sudo tail -f /var/log/nginx/error.log
.user.ini 覆盖upload_max_filesize = 20M
post_max_size = 20M
max_execution_time = 300
php -m
安装扩展:
sudo apt install php8.1-mysql php8.1-curl
php -i | grep "Configuration File"
sudo apachectl -M | grep php
systemctl status php8.1-fpm
tail -f /var/log/php_errors.log
如果你能告诉我:
我可以给你更精确的调试方案。