gpt4 book ai didi

PHP cron 脚本每分钟触发一次以上

转载 作者:搜寻专家 更新时间:2023-10-31 22:13:01 25 4
gpt4 key购买 nike

我有一个 cron 作业似乎每分钟运行一次以上,考虑到 linux 仅以分钟为间隔处理,我不确定这怎么可能。以下是我的研究方式。

首先,我确认/etc/cron.hourly、/etc/cron.daily 等中没有任何其他条目......那里没有任何异常。

然后,我进入/etc/crontab 以确保没有其他条目,那里什么也没有。

然后,我运行这个命令来查看所有用户的 crontabs

$(cut -f1 -d:/etc/passwd) 中的用户;做 echo $user; crontab -u $用户 -l;完成

...那里什么都没有,然而,根没有出现,但也许这是意料之中的

最后,我点击了 crontab -l

我得到的只是预期的一个条目:

* * * * * wget --no-check-certificate -q -O - https://...cron_custom_alerts.php

基于以上内容,我假设确实只配置了一个 cron 作业。但是,我将日志记录添加到正在运行的脚本中,并且我看到每分钟执行一次以上。我输出 $_SERVER['PHP_SELF'] 和 $_SERVER['REMOTE_ADDR]' 以防 cron 在外部执行。但是,日志没有显示任何远程 IP,除了我怀疑它运行了多次之外,没有提供任何线索。

2012-05-02 21:57:01 - /cron_custom_alerts.php EXECUTED BY 
2012-05-02 21:57:47 - /cron_custom_alerts.php EXECUTED BY
2012-05-02 21:57:53 - /cron_custom_alerts.php EXECUTED BY
2012-05-02 21:58:01 - /cron_custom_alerts.php EXECUTED BY
2012-05-02 21:58:48 - /cron_custom_alerts.php EXECUTED BY
2012-05-02 21:58:54 - /cron_custom_alerts.php EXECUTED BY
2012-05-02 21:59:01 - /cron_custom_alerts.php EXECUTED BY
2012-05-02 21:59:47 - /cron_custom_alerts.php EXECUTED BY
2012-05-02 21:59:53 - /cron_custom_alerts.php EXECUTED BY
2012-05-02 22:00:01 - /cron_custom_alerts.php EXECUTED BY

它们似乎以三个为一组运行。当我进入 crontab 并注释掉一个条目时,它变成了两个!显然,还有两个隐藏的作业在某处调用此脚本,但通过 crontab -e

不可见

如果我可以通过 PHP 执行更多日志记录,我对此持开放态度,但我真的无法调查是什么触发了此脚本执行。

答案:访问日志表明脚本正在被外部访问,而不是由任何内部 cron 作业访问。其他服务器通过 htaccess deny 被阻止执行 cron。

最佳答案

cron 通常是一个编写良好的软件,不会做这些深奥的事情。如果是这样,您将不是唯一经历过它的人。至少作为 root,您可以看到系统上的所有 crontab 条目。

禁用 cronjob 并查看它是否仍然被执行。如果是,请使用您的网络服务器的访问日志跟踪这些 HTTP 请求的来源(尤其是当它们每分钟发生时)。阻止这些请求。

关于PHP cron 脚本每分钟触发一次以上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10424131/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com