在 Ubuntu 上“精简 PHP 配置”通常有两个含义,你可以按需选择:
PHP 默认会启用很多扩展,很多用不到,可以关掉。
php -m
php --ini
一般路径:
/etc/php/8.x/cli/php.ini
/etc/php/8.x/apache2/conf.d/
/etc/php/8.x/fpm/conf.d/
Ubuntu 使用软链接管理扩展:
ls /etc/php/8.x/cli/conf.d/
禁用扩展(以 mysqli 为例):
sudo rm /etc/php/8.x/cli/conf.d/*mysqli.ini
或统一禁用(以 fpm 为例):
sudo phpdismod -v 8.x -s fpm mysqli
常用可禁用的扩展(视项目而定):
xmlrpcwddxposixshmopsysvmsgenchantpdo_dblib⚠️ 不要禁用:
ctypejsonmbstring(很多框架需要)可以直接复制 production 版本:
sudo cp /usr/lib/php/8.x/php.ini-production /etc/php/8.x/cli/php.ini
expose_php = Off
display_errors = Off
log_errors = On
memory_limit = 128M
max_execution_time = 30
upload_max_filesize = 8M
post_max_size = 8M
disable_functions = exec,passthru,shell_exec,system,proc_open,popen
如果是 Web 服务:
sudo apt install php-fpm nginx
不要 apt install php-*,按需安装:
sudo apt install php-fpm php-mysql php-mbstring php-curl
如果是 Docker 或极小系统:
php:8.x-alpinephp -n 启动(不加载任何 ini)✅ 用 phpdismod 关无用扩展
✅ 用 php.ini-production
✅ Web 用 PHP-FPM
✅ 按需安装模块,不贪多
如果你能说明:
我可以给你一份精确可执行的精简清单。