廣告廣告
  加入我的最愛 設為首頁 風格修改
首頁 首尾
 手機版   訂閱   地圖  簡體 
您是第 5472 個閱讀者
 
發表文章 發表投票 回覆文章
  可列印版   加為IE收藏   收藏主題   上一主題 | 下一主題   
love104 手機
個人頭像
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x0 鮮花 x4
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片
推文 x0
[PHP][討論] 使用 PHP 監測伺服器狀態
文章出處:PHP-twbb http://www.twbb.org/...dex.php
這是一個測試伺服器的小程式,大家可以試試喔




使用說明:
//必須自行建立檢測檔 host.txt 檔案
//檔案內容的格式如下所示,以 @ 符號分隔,一列表示一個監測主機,監測項目共有 13 項, 1 代表要監測, 0 代表不監測,
// 13 個項目分別表示 FTP、SSH、TELNET、SMTP、DNS、DHCP、HTTP、POP3、SAMBA、IMAP、SNMP、PROXY、MySQL
//格式:
// 主機名稱@IP 位址或主機名稱@監測項目
//範例:
// 嘟嘟學習網@192.168.0.254@1100110011101

// 檢測檔 host.txt 內容
嘟嘟學習網@61.111.111.111@1101111111101
Loopback@111.111.111.111@1110111111011
192.168.0.254@192.168.0.254@1110111110111
192.168.1.254@192.168.0.254@1101111111011
localhost@127.0.0.1@1111111100111
K7 1.2G@61.111.111.113@1100111111110

// 主程式 link.php 檔案內容
<?php
//設定更新時間
header("Refresh:600");
//標題
$title = "歡迎使用嘟嘟伺服器狀態監測系統";
//取得現在的日期時間,並轉換成 'YYYY 年 M 月 D 日' 的格式
$date = date("Y 年 m 月 j 日",time());
//取得今天的星期, 0 為 '星期天' , 1 為 '星期一' , ... , 6 為 '星期六'
$week = date("w",time());
//陣列查表,將數字的星期,轉換成中文
$weekday = array('星期日','星期一','星期二','星期三','星期四','星期五','星期六');
//顯示表格
echo "<TABLE BORDER=20 WIDTH=900 ALIGN=CENTER BGCOLOR=#00ff00>";
//顯示標題
echo "<TR><TD ALIGN=CENTER COLSPAN=15 BGCOLOR=#cc44ff><FONT SIZE=5><B> $title </B><BR> $date " . $weekday[$week] . "</FONT></TD></TR>";
//顯示檢測項目
echo "<TR BGCOLOR=#ccddee><TH>主機名稱</TH><TH>偵測時間</TH><TH>FTP</TH><TH>SSH</TH><TH>TELNET</TH><TH>SMTP</TH><TH>DNS</TH><TH>DHCP</TH><TH>HTTP</TH><TH>POP3</TH><TH>SAMBA</TH><TH>IMAP</TH><TH>SNMP</TH><TH>PROXY</TH><TH>MySQL</TH></TR>";
//檢測檔案名稱,檔案內容的格式如下所示,以 @ 符號分隔,一列表示一個監測主機,監測項目共有 13 項, 1 代表要監測 ,
// 0 代表不監測, 13 個項目分別表示 FTP、SSH、TELNET、SMTP、DNS、DHCP、HTTP、POP3、SAMBA、IMAP、SNMP、PROXY、MySQL
//
//格式:
// 主機名稱@IP 位址或主機名稱@監測項目
//範例:
// 嘟嘟學習網@192.168.0.254@1100110011101

$file = "host.txt";
//取得檔案內容存入陣列,一個元素代表一列
$get = file("$file");

//取得測試主機數量,計算 $get 陣列的元素數目即可得知
$host_count = count($get);

//定義測試 port 清單
$port = array(21,22,23,25,53,67,80,110,139,143,161,3128,3306);

for ( $i = 0 ; $i < $host_count ; $i++ ) {
//切割每一列的資料存入陣列,以 @ 為分割符號, $get_line[$i][0] 為主機名稱 , $get_line[$i][1] 為測試的 IP 或主機名稱
//$get_line[$i][2] 為測試項目,共有 13 項
$get_line[$i] = split("\@",$get[$i]);

//顯示欄位名稱
echo "<TR><TD BGCOLOR=#62defe>" . $get_line[$i][0] . "</TD><TD BGCOLOR=#77ff00 ALIGN=CENTER>" . date("H:i:s",time()) . "</TD>";

//取得測試項目的長度,並去除頭尾的空白字元
$len = strlen(trim($get_line[$i][2]));

//測試 timeout 時間
$timeout = 1;

for ( $j = 0 ; $j < $len ; $j++) {

//各別取出比對項目每一項的值,若等於 1 ,就做測試 , 0 測不做測試
if (substr($get_line[$i][2],$j,1) == "1") {
//進行測試,並抑制錯誤訊息輸出
$test[$j] = @fsockopen($get_line[$i][1],$port[$j],$errno,$errstr,$timeout);
//顯示測試結果
if ($test[$j]) {
echo "<TD BGCOLOR=yellow align=center>成功</FONT></TD>";
} else {
echo "<TD BGCOLOR=red align=center><FONT COLOR=white>失敗</FONT></TD>";
}
} else {
echo "<TD BGCOLOR=#fed19a align=center><FONT COLOR=blue> N/A </FONT></TD>";
}
}
echo "</TR>";
}
//備註
$message = "<B>備註:</B><BR>  1.N/A 表示未測試 <BR>  2.測試結果僅供參考,無法確定伺服器是否能正常運作<BR>  3.本監測畫面每 10 分鐘更新一次";
echo "<TR><TD COLSPAN=15 BGCOLOR=#f77dfd> $message </TD><TR>";
echo "</TABLE>";
?>
_________________


[ 此文章被love104在2005-08-04 19:38重新編輯 ]



獻花 x0 回到頂端 [樓 主] From:台灣數位聯合 | Posted:2005-08-04 09:07 |
cs-tw 手機
個人頭像
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x1 鮮花 x18
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

感謝大大囉!!看起來還不錯用@@我架好的測試網址http://luctx.com...fo.php
表情 表情


獻花 x0 回到頂端 [1 樓] From:台灣 和信超媒體寬帶網 | Posted:2005-08-04 09:28 |
cwei
數位造型
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x0 鮮花 x13
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片
文章表情
看了大大提供的程式及樓上的成果
真的是很不錯,換我也來試一下
謝啦


獻花 x0 回到頂端 [2 樓] From:台灣中華電信 | Posted:2005-09-18 14:20 |
devilchc 手機
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x0 鮮花 x18
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

感謝用心!及慷慨分享喔!


獻花 x0 回到頂端 [3 樓] From:台灣 | Posted:2006-01-27 16:28 |

首頁  發表文章 發表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.056326 second(s),query:16 Gzip disabled
本站由 瀛睿律師事務所 擔任常年法律顧問 | 免責聲明 | 本網站已依台灣網站內容分級規定處理 | 連絡我們 | 訪客留言