我正在准备我的 Laravel 5.5 生产环境以在弹性负载均衡器 (ELB) 后面的多个 AWS EC2 实例上运行。所有共享数据,如图像、css、js 都存储在 S3 上,日志流式传输到 CloudWatch,数据库在 RDS 上。 session 和缓存已配置为使用数据库。
一切都很好,除了我看到 session 表用 user_agent "ELB-HealthChecker/2.0"填满了数千个 ELB 健康检查。 Laravel/PHP 显然将每个健康检查视为一个新用户并生成一个新 session ,每个实例每 30 秒一个。这可能会很快失控,并且不可持续。
所以我的问题是...... Laravel 中是否有一种方法可以忽略或拒绝来自特定 user_agents 的请求,以便他们不启动 session ?我可以编写一个 shell 脚本来定期删除记录,但这似乎是不必要的黑客攻击。
最佳答案
我认为最简单的解决方案是将 ELB 定向到特定路由以进行健康检查 ping,然后将该路由的 session 中间件禁用为 mentioned here
关于mysql - Laravel Sessions 数据库表填充了 user_agent ELB-HealthChecker/2.0 健康检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46411534/