如何停止 PHP 服务器上的请求,而它是 运行 cron 作业计划的 PHP 脚本?

How to stop requests on PHP server while it is running cron job sheduled PHP script?

我遇到过一些 DDOS 攻击导致我的 PHP 服务器宕机的情况。偶尔。

我将 AWS 与 Auto Scaling 组一起使用,所以这不是问题。

当此服务器在计划的 PHP 脚本的 cron 作业中间关闭时,问题就开始了。

所以我的想法是阻止 PHP 服务器上的所有路由,除了 /healthcheck...

我该怎么做,是否有更好的解决方案?

您是否考虑过创建辅助 Auto Scaling 组,专门用于 cron 作业?它需要像这样设置计划操作:

  1. 使用与当前 Auto Scaling 组相同的启动配置
  2. 设置第二个自动缩放组,将“计划操作”设置为在特定时间启动服务器(最小/最大/期望设置为 1)
  3. 使用 AWS CLI 调用更新您的 cron,以在新创建的缩放组上将最小/最大/期望设置设置为 0 来终止实例

这样 live 系统和 cron 作业就分开了,不会相互影响。