温馨提示×

如何精简ubuntu php配置

小樊
37
2026-10-04 10:55:44
栏目: 编程语言

在 Ubuntu 上“精简 PHP 配置”通常有两个含义,你可以按需选择:


一、精简 PHP 已加载的模块(最常用)

PHP 默认会启用很多扩展,很多用不到,可以关掉。

1. 查看当前启用的模块

php -m

2. 查看扩展配置文件位置

php --ini

一般路径:

/etc/php/8.x/cli/php.ini
/etc/php/8.x/apache2/conf.d/
/etc/php/8.x/fpm/conf.d/

3. 禁用不需要的扩展

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

常用可禁用的扩展(视项目而定):

  • xmlrpc
  • wddx
  • posix
  • shmop
  • sysvmsg
  • enchant
  • pdo_dblib

⚠️ 不要禁用:

  • ctype
  • json
  • mbstring(很多框架需要)

二、精简 php.ini 配置(性能 & 安全)

1. 使用最小 php.ini

可以直接复制 production 版本:

sudo cp /usr/lib/php/8.x/php.ini-production /etc/php/8.x/cli/php.ini

2. 常见精简/优化项

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

三、精简 PHP 运行环境(更彻底)

如果是 Web 服务:

1. 不用 Apache,用 PHP-FPM + Nginx

sudo apt install php-fpm nginx

2. 只装必要模块

不要 apt install php-*,按需安装:

sudo apt install php-fpm php-mysql php-mbstring php-curl

四、容器/最小化方案(进阶)

如果是 Docker 或极小系统:

  • 使用 php:8.x-alpine
  • 只装需要的扩展
  • 用 php -n 启动(不加载任何 ini)

总结(推荐做法)

✅ 用 phpdismod 关无用扩展
✅ 用 php.ini-production
✅ Web 用 PHP-FPM
✅ 按需安装模块,不贪多

如果你能说明:

  • PHP 版本
  • 用在 CLI / Nginx / Apache
  • 是否 WordPress / Laravel / 自建项目

我可以给你一份精确可执行的精简清单。

0 踩