在 CentOS 上运行 Laravel 明显比预期慢,通常不是 Laravel 本身的问题,而是系统环境、PHP 配置或服务器资源导致的。下面按最常见原因 → 排查方式 → 解决建议来说明。
Laravel 是“重框架”,没有 OPcache 会慢 3~10 倍。
✅ 检查:
php -m | grep opcache
❌ 如果没有输出,说明没开。
✅ 安装并开启(CentOS 示例):
yum install php-opcache -y
编辑 php.ini:
opcache.enable=1
opcache.memory_consumption=128
opcache.max_accelerated_files=10000
opcache.revalidate_freq=60
重启 PHP:
systemctl restart php-fpm
php artisan serve(开发服务器)php artisan serve
❌ 非常慢、只能单请求 ✅ 生产环境应使用:
CentOS 默认 SELinux + 严格权限 会导致:
storage/ 写入慢bootstrap/cache/ 无法缓存✅ 正确权限:
chown -R nginx:nginx /var/www/laravel
chmod -R 755 /var/www/laravel
chmod -R 777 storage bootstrap/cache
✅ 关闭 SELinux(测试用):
setenforce 0
Laravel 默认不会缓存配置。
✅ 生产环境务必执行:
php artisan config:cache
php artisan route:cache
php artisan view:cache
.env 中:
APP_DEBUG=true
❌ 非常影响性能
✅ 生产环境:
APP_DEBUG=false
编辑:
/etc/php-fpm.d/www.conf
常见调整:
pm = dynamic
pm.max_children = 50
pm.start_servers = 10
pm.min_spare_servers = 5
pm.max_spare_servers = 20
Laravel 对 IO 敏感(日志、缓存、autoload)
✅ 建议:
storage/logs 可关掉或异步如果 .env 中:
DB_HOST=localhost
在 CentOS 可能解析很慢
✅ 改为:
DB_HOST=127.0.0.1
你可以一条条核对:
你可以告诉我:
我可以直接给你针对性的优化方案。