我正在制定一个 cronjob,将我当前的 IP(家庭服务器)存储在外部 VPS 服务器上的数据库中。我现在可以使用 IP 连接到我的家庭服务器,而无需使用 DynDNS。(好吧,您可能想为什么不直接使用 DynDNS,因为每次我的 IP 发生变化时,我都担心有人会将我的 IP 保存在他的数据库中,这让我感到不安全。)
有没有可能的方法定期执行我 VPS 服务器上的 php 文件来确定我家里的当前 IP,然后将其存储在数据库中?
提前谢谢!
答案1
为此,请使用wget
或curl
。 您的家庭系统上的 crontab 条目如下即可解决问题(每 30 分钟更新一次):
*/30 * * * * wget -O /dev/null http://your.server.com/ip-logger.php >/tmp/last-ip.log
使用crontab -e
打开包含 crontab 条目的编辑器,并在末尾添加该行。这将丢弃 ip logger 服务器端脚本发送的任何输出,并将最后的控制台输出记录在 中/tmp/last-ip.log
,以防您需要调试某些内容。
在服务器端,您的 PHP 脚本需要查看$_SERVER['REMOTE_ADDR']
并将其记录到您的数据库中。如何做到这一点超出了此回复的范围 :)