温馨提示×

如何优化debian php

小樊
57
2026-09-02 03:28:50
栏目: 编程语言

优化 Debian 上的 PHP 主要从系统层面、PHP 配置、OPcache、PHP-FPM、Web 服务器配合、代码与扩展几个方面入手。下面按“实用 + 可操作”的方式给你一套方案。


一、选择合适的 PHP 版本(很重要)

Debian 默认源可能版本偏旧。

php -v

建议:

  • Debian 11 → PHP 8.1/8.2
  • Debian 12 → PHP 8.2/8.3

使用 Sury 源安装新版 PHP:

apt install -y lsb-release ca-certificates apt-transport-https
curl -sSL https://packages.sury.org/php/README.txt
# 按官方说明添加源
apt update
apt install php8.2 php8.2-fpm php8.2-cli

二、开启并优化 OPcache(最核心)

OPcache 是 PHP 性能提升最大的点。

编辑:

/etc/php/8.2/fpm/conf.d/10-opcache.ini

推荐配置:

opcache.enable=1
opcache.memory_consumption=256
opcache.interned_strings_buffer=16
opcache.max_accelerated_files=10000
opcache.revalidate_freq=60
opcache.validate_timestamps=0   ; 生产环境关闭
opcache.jit=1255
opcache.jit_buffer_size=128M

重启:

systemctl restart php8.2-fpm

三、优化 PHP-FPM(并发与资源)

配置文件:

/etc/php/8.2/fpm/pool.d/www.conf

1️⃣ 进程模式

推荐 dynamic 或 ondemand

pm = dynamic
pm.max_children = 50
pm.start_servers = 10
pm.min_spare_servers = 5
pm.max_spare_servers = 20
pm.max_requests = 500

(根据内存调整:max_children ≈ 内存 / 单个PHP进程(30~50MB))

2️⃣ 慢日志(排查卡顿)

slowlog = /var/log/php-fpm-slow.log
request_slowlog_timeout = 2s

四、PHP 基础配置优化

/etc/php/8.2/fpm/php.ini

memory_limit = 256M
upload_max_filesize = 20M
post_max_size = 20M
max_execution_time = 30
expose_php = Off
disable_functions = exec,passthru,shell_exec,system

五、Web 服务器配合(Nginx 示例)

Nginx + PHP-FPM 是最优组合。

location ~ \.php$ {
    include fastcgi_params;
    fastcgi_pass unix:/run/php/php8.2-fpm.sock;
    fastcgi_buffers 16 16k;
    fastcgi_buffer_size 32k;
}

开启:

  • gzip
  • http2
  • 静态资源缓存

六、必要扩展(按需)

apt install php8.2-redis php8.2-mysql php8.2-curl php8.2-mbstring php8.2-zip

常见加速:

  • redis(缓存)
  • opcache(必须)
  • apcu(本地缓存)

七、生产环境额外建议

✅ 关闭 display_errors ✅ 使用 php-fpm 而不是 mod_php ✅ 使用 composer 优化自动加载

composer install --optimize-autoloader --no-dev

✅ 定期清理 OPcache(部署后)


八、简单性能检测

apt install apache2-utils
ab -n 1000 -c 50 http://localhost/

如果你愿意,可以告诉我:

  • Debian 版本
  • PHP 用途(WordPress / Laravel / API)
  • 服务器配置(CPU / 内存)

我可以给你一套精准参数模板。

0 踩