PHP 应用优化、缓存与运维

更新于 2026年8月21日

适用人群:PHP 站点已上线、要做性能优化与稳定运维的开发者。

核心概念

性能三板斧

  • OPcache:缓存编译后的 PHP 字节码,显著提升性能,生产必开。
  • 框架缓存:Laravel 的 config:cache / route:cache / view:cache 把配置、路由、视图预编译,减少每次请求开销。
  • Redis + 队列:把缓存、会话放 Redis,把耗时任务(发信、通知)丢队列异步处理。

安全

PHP 应用是注入攻击的常见目标,用框架的查询构造器/ORM 参数化查询防 SQL 注入,及时更新框架和依赖修补漏洞。

操作步骤

  1. 步骤 1开启 OPcache

    在 php.ini 打开 opcache,生产环境显著提速。

  2. 步骤 2框架缓存

    部署后运行 config:cache、route:cache、view:cache(Laravel),减少运行时开销。

  3. 步骤 3接 Redis 与队列

    缓存/会话用 Redis,耗时任务用队列异步处理,配 worker 常驻消费。

  4. 步骤 4安全加固

    参数化查询防注入、及时更新依赖、收紧 .env 与目录权限。

  5. 步骤 5备份与监控

    定期备份数据库和上传文件到异地,监控可用性、证书到期与备案状态。

实际示例

# Laravel 生产缓存(部署后执行)
php artisan config:cache
php artisan route:cache
php artisan view:cache
# 队列 worker(配合 supervisor/systemd 常驻)
php artisan queue:work --daemon

常见错误

  • ⚠️生产没开 OPcache,性能白白损失
  • ⚠️改了 .env/配置后忘了 config:clear/重新 cache,配置没生效或用了旧缓存
  • ⚠️队列 worker 没用 supervisor/systemd 守护,断了任务不再消费
  • ⚠️拼接 SQL 而不用参数化查询,埋下注入风险

对应工具

常见问题

Laravel 改了配置不生效?
若之前执行过 config:cache,改 .env 后要 php artisan config:clear 或重新 config:cache,否则用的是旧缓存配置。
PHP 站点被挂马会影响备案吗?
可能。被植入违规内容会被判内容违规,进而影响甚至注销备案,务必参数化查询、及时更新与加固。

相关教程

相关文章

官方资料来源