温馨提示×

ubuntu php如何提速

小樊
45
2026-09-25 16:15:59
栏目: 编程语言

在 Ubuntu 上给 PHP 提速,可以从 PHP 本身、Web 服务器、缓存、代码和系统 几个层面入手。下面按「实用优先级」给你一套方案。


一、使用 PHP-FPM(最常见提速方式)

如果你用的是 Apache,强烈建议切换到 PHP-FPM。

Apache + PHP-FPM

sudo apt install php-fpm
sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php-fpm
sudo systemctl restart apache2

Nginx + PHP-FPM(更推荐)

sudo apt install nginx php-fpm

Nginx 默认就配合 PHP-FPM,性能比 Apache mod_php 好很多。


二、开启 OPcache(必开)

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 版本越高,性能越好:

php -v

建议:

  • ✅ PHP 8.1 / 8.2 / 8.3
  • ❌ PHP 7.4 及以下(已停止维护)

升级:

sudo apt install php8.3 php8.3-fpm

四、使用 Redis / Memcached 缓存

减少数据库和重复计算。

安装 Redis

sudo apt install redis-server php-redis
sudo systemctl enable redis

在代码中(如 Laravel):

CACHE_DRIVER=redis
SESSION_DRIVER=redis

五、调整 PHP-FPM 进程池

编辑:

/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 扩展

查看已加载扩展:

php -m

禁用不用的:

sudo phpdismod xdebug

⚠️ Xdebug 会严重拖慢性能,仅开发环境使用


七、启用 HTTP 缓存 & 压缩

Nginx 示例

gzip on;
gzip_types text/css application/javascript;

浏览器缓存

对静态资源设置 Cache-Control。


八、使用更快的文件系统 & SSD

  • 使用 SSD
  • /var/www 和 /tmp 放速度快的磁盘
  • 避免 NFS 挂载代码目录

九、代码层面优化

  • 避免重复查询
  • 使用懒加载
  • 合理使用索引
  • 减少 file_get_contents、正则、循环嵌套

十、性能检测工具

  • blackfire.io
  • xhprof
  • top / htop
  • php-fpm status

最简“提速清单”(推荐你先做)

✅ 升级到 PHP 8.3
✅ 使用 PHP-FPM
✅ 开启 OPcache
✅ 安装 Redis
✅ 关闭 Xdebug

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

  • 用的是 Apache 还是 Nginx
  • PHP 版本
  • 是 WordPress / Laravel / 自写框架

我可以给你更精确的配置。

0 踩