2014-10-02 50 views
1

我創建了一個腳本來搜索,複製,壓縮和從Cliet /本地PC將文件發送到主PC。獲取本地計算機的IP(在cron的腳本中使用)

的文件需要在主電腦上被識別。格式是

`UUID.IP.crc.gz` 

因此,PC運行腳本(本地),我需要該PC的IP地址。

我使用$_SERVER["REMOTE_ADDR"]$_SERVER['SERVER_ADDR'],但沒有那些定義的嘗試。

Notice: Undefined index: SERVER_ADDR in C:\wamp\www\postEnginInstruction\properties.php on line 9 與同爲"REMOTE_ADDR"

我在做什麼錯?

回答

2

如果你在一個CRON中使用php,沒有HTTP請求和服務器,你只是將它用作腳本語言。所以你不能訪問$ _SERVER的值。

您必須使用PHP中的exec命令,然後使用ipconfig(或linux上的ifconfig)命令。

編輯:也期待在這裏更容易的解決方案:How do I find my server's IP address in PHP(CLI)你可以做

1

有一件事要「創造」的HTTP請求安排curl -command來激活你的PHP腳本:

curl http://your.server/path/to/your/scheduledScript.php 

有但是有一個缺點:你的預定腳本也可以從外部調用。這是你應該管理的。 (通過.htaccess允許/拒絕指令,或某種形式從CRON生成和提供一次性令牌)。

(最後一個旁註:確保您使用您的服務器的DNS名稱,如果你使用localhost,該地址可能會是127.0.01,這是不是非常有幫助);)

相關問題