用 PHP 監察伺服器狀態

2008-02-18 | 6:46 pm分类:程序设计 | 87 views

要用 PHP 監察伺服器的是否在線十分簡單,可以單純呼叫系統指令並用 ping 指令便可以,但缺點是主機會不回應 ping 請求。

而另一個方法則是用 fsockopen() 函式來做,而 fsockopen() 的功能是開啟 Internet 或 Unix domain socket 連線,以下是具體實現方法:

PLAIN TEXT
CODE:
 
   1.
      
<?php
  
2.
      
$fp = fsockopen("www.example.com", 80, $errno, $errstr, 10);
  
3.
      
if (!$fp) {
  
4.
        
echo "ERROR: $errno - $errstr<br />\n";
  
5.
      
} else {
  
6.
        
echo 'Server is online';
  
7.
      
}
  
8.
      
?>

以上的程式碼會檢查主機 www.example.com 上的 port 80,並設定 10 秒沒有回應便停止嘗試連線。如果連線失敗會將錯誤編號儲存在 $errno 變數,而錯誤訊息則會儲存在 $errorstr。

Sorry, comments for this entry are closed at this time.