6

根据在每台机器上设置的 cronjobs,我有一个 PHP 脚本位于一台服务器上,该脚本在一天中的不同时间被几台不同的机器访问。我想知道发出请求的机器的 IP,当它是由浏览器发出时,以下成功执行:

<?php
  ...
  echo $_SERVER['REMOTE_ADDR'];
  ...
?>

但是,当由 CURL 或我尝试使用的任何其他命令行工具(包括 lynx)制作时,我最终得到以下垃圾:

2701:5:4a80:7d:2ee:8eff:5e61:801d

根据我所做的调查,这是因为 Apache 没有$_SERVER为从命令行收到的请求填充变量。

Cron 作业的远程地址问题

任何人都知道一种让命令行请求与$_SERVER变量配合得很好的方法,还是我应该走另一条路?

4

1 回答 1

10

那不是垃圾,那是正确的远程地址。有人使用 IPv6 访问您的服务器。

于 2012-09-24T18:52:29.933 回答