Cron Job的REMOTE ADDR问题

Die*_*oP. 2 php

我需要获取访问者的IP,但是当cron运行时,它发现REMOTE ADDR是未定义的索引.事实上,当文件与cron一起运行时,没有远程地址.

我该如何避免这个问题?

在PHP中有没有办法说"如果REMOTE ADDR存在则考虑它,如果没有(因为它是从cron运行的)然后绕过它"?

$ip=$_SERVER['REMOTE_ADDR'];


$allowed_ips = array("82.61.144.100", "82.64.144.100");

if (!in_array($ip, $allowed_ips)) {
header("Location: http://pitchmystuff.co.uk/coming_soon/");
Run Code Online (Sandbox Code Playgroud)

}

Mar*_*c B 8

更好的方法是使用

if ((php_sapi_name() == 'cli')) {
  ... running as commandline/cron script ...
}
Run Code Online (Sandbox Code Playgroud)

代替.