2010-04-08 154 views
0

我想知道什麼是最好的方式,讓網站的訪問者ping各種遠程服務器。 例如: 我是一個訪問者,我從位置Paris, France的一個位置中選擇,腳本會從我的位置ping到巴黎,並返回平均x次的ping次數。客戶端ping到服務器

任何想法?

+0

你的意思是在PHP中做到這一點的最佳方式? – webbiedave 2010-04-08 18:43:28

+0

理想情況是,但我會採取任何你可能會建議的方法! – skarama 2010-04-08 18:45:24

+0

你是指從客戶端位置到巴黎,或從網絡服務器到巴黎的位置? – 2011-07-11 04:15:05

回答

0
$ping_handle = popen("/sbin/ping -c 10 google.com","r"); 
while($line = fgets($ping_handle)) 
{ 
    echo $line,"\n"; 
} 
+0

這是* nix依賴,但。 – 2010-04-08 19:01:35

+0

我沒有看到任何結果,$行似乎是空的? – skarama 2010-04-08 19:03:10

0

我不確定是否有「最好」的方式,但有一些方法可以管理它。

  • 使用Net_Ping PEAR package
  • 執行本地使用exec()或類似的東西,即exec("ping $stuff",$output);ping命令。這顯然將你連接到一個外部程序,這可能是不可取的,你必須解析輸出。
  • 使用socket handlers實現您自己的ping。可能不是最簡單的方法。

這聽起來像你實際上想要的不僅僅是通常的「服務器是否活着?」支票類型,所以如果是我的話,我會選擇PEAR套餐。它已經得到了一些內置的結果分析。我不是PEAR的粉絲,但是重新發明輪子是沒有意義的。

+0

非常感謝,我會試試看 – skarama 2010-04-08 19:15:04