我需要建议如何保护我创建的通过cronjobs运行的文件。
目前,我正在使用HTTP_referrer阻止未经授权的人直接访问。但这也会阻止我的cron作业执行它。
我在脚本的顶部插入了以下代码:
if(empty($_SERVER['HTTP_REFERER'])){
echo 'Restricted Access';
exit;
}
这是否安全,是否会阻止我的cron访问?任何帮助赞赏。感谢。
答案 0 :(得分:3)
使用Cron + PHP CLI执行脚本:
请勿将该文件放在webroot下。
使用Cron + Wget请求脚本:
通过邮件将密钥传递给您的脚本;检查脚本中的密钥。例如:
位于wwwroot外的服务器上的key.txt的内容:
key=hello
Wget命令行
wget --post-file=key.txt http://example.com/cron.php
PHP脚本
parse_str(file_get_contents("key.txt"), $array);
if($array != $_POST)
die("does not match");