在 Ubuntu 上给 PHP 提速,可以从 PHP 本身、Web 服务器、缓存、代码和系统 几个层面入手。下面按「实用优先级」给你一套方案。
如果你用的是 Apache,强烈建议切换到 PHP-FPM。
sudo apt install php-fpm
sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php-fpm
sudo systemctl restart apache2
sudo apt install nginx php-fpm
Nginx 默认就配合 PHP-FPM,性能比 Apache mod_php 好很多。
OPcache 能缓存编译后的 PHP 脚本,效果立竿见影。
sudo apt install php-opcache
编辑 php.ini(路径可能是 /etc/php/8.x/fpm/php.ini):
opcache.enable=1
opcache.memory_consumption=128
opcache.max_accelerated_files=10000
opcache.revalidate_freq=60
opcache.validate_timestamps=0 ; 生产环境建议关闭
重启 PHP-FPM:
sudo systemctl restart php8.x-fpm
PHP 版本越高,性能越好:
php -v
建议:
升级:
sudo apt install php8.3 php8.3-fpm
减少数据库和重复计算。
sudo apt install redis-server php-redis
sudo systemctl enable redis
在代码中(如 Laravel):
CACHE_DRIVER=redis
SESSION_DRIVER=redis
编辑:
/etc/php/8.x/fpm/pool.d/www.conf
常见优化:
pm = dynamic
pm.max_children = 50
pm.start_servers = 10
pm.min_spare_servers = 5
pm.max_spare_servers = 20
根据内存调整(每个 PHP 进程约 30–80MB)。
查看已加载扩展:
php -m
禁用不用的:
sudo phpdismod xdebug
⚠️ Xdebug 会严重拖慢性能,仅开发环境使用
gzip on;
gzip_types text/css application/javascript;
对静态资源设置 Cache-Control。
/var/www 和 /tmp 放速度快的磁盘file_get_contents、正则、循环嵌套blackfire.ioxhproftop / htopphp-fpm status✅ 升级到 PHP 8.3
✅ 使用 PHP-FPM
✅ 开启 OPcache
✅ 安装 Redis
✅ 关闭 Xdebug
如果你愿意,可以告诉我:
我可以给你更精确的配置。