温馨提示×

debian跑laravel卡顿为何

小樊
47
2026-09-23 13:09:32
栏目: 智能运维

在 Debian 上运行 Laravel 出现卡顿,通常不是“Laravel 本身慢”,而是环境配置或资源问题导致。下面按最常见 → 较少见的顺序说明原因和排查方法。


一、最常见原因(80% 的卡顿来自这里)

1. 没有开启 OPcache

Laravel 是 PHP 框架,没 OPcache 会非常慢。

检查

php -m | grep opcache

解决(Debian)

sudo apt install php-opcache

编辑 php.ini:

opcache.enable=1
opcache.memory_consumption=128
opcache.max_accelerated_files=10000

重启 PHP:

sudo systemctl restart php-fpm

2. 使用 php artisan serve 跑生产

artisan serve 只适合开发,并发极差。

✅ 正确方式:

  • Nginx + PHP-FPM
  • 或 Apache + PHP-FPM

3. 文件权限 & 磁盘 IO 问题

Laravel 大量读写:

  • storage/
  • bootstrap/cache/

常见错误

  • 权限不对 → 反复写失败
  • 使用 HDD / 低性能云盘

检查

ls -ld storage bootstrap/cache

建议

chown -R www-data:www-data storage bootstrap/cache
chmod -R 775 storage bootstrap/cache

4. 调试模式没关(APP_DEBUG=true)

开发环境卡,生产更卡。

APP_DEBUG=false
APP_ENV=production

二、Laravel 自身配置问题

5. 没跑优化命令

php artisan config:cache
php artisan route:cache
php artisan view:cache
php artisan optimize

6. 日志级别太低 / 日志爆量

storage/logs/laravel.log 几个 G 会拖慢 IO。

du -sh storage/logs

7. 使用了同步队列(默认)

耗时任务(邮件、导出)同步执行会卡死请求。

✅ 使用:

php artisan queue:work

三、Debian / 服务器层面问题

8. PHP-FPM 配置不合理

查看:

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

重点:

pm = dynamic
pm.max_children = 20~50
pm.start_servers = 10

9. 内存不足 / 频繁 OOM

free -h
htop

如果内存 < 1G,跑 Laravel + MySQL 很容易卡。


10. 数据库慢查询

SHOW PROCESSLIST;

或开启 MySQL 慢日志。


四、快速自检清单(30 秒)

php -m | grep opcache
free -h
htop
du -sh storage
cat .env | grep APP_DEBUG

五、如果你愿意,我可以更精准帮你

请告诉我:

  1. Debian 版本(11 / 12?)
  2. PHP 版本
  3. Web 服务(Nginx / Apache?)
  4. 卡在页面访问还是命令行?
  5. 服务器配置(CPU / 内存)

我可以直接给你一份针对你服务器的优化方案。

0 踩