預(yù)期準(zhǔn)備:
一個139郵箱,收到郵件后,可以免費給你短信提醒。如果你不需要短信提醒功能,用什么郵箱都可以
另外一個可以運行PHP文件的Web服務(wù)器(相當(dāng)于監(jiān)控服務(wù)器),現(xiàn)在免費的PHP網(wǎng)站空間很多,上網(wǎng)搜搜。如果將PHP監(jiān)控文件放到你自己的服務(wù)器上,這個監(jiān)控文件也就等于擺設(shè),服務(wù)器掛掉了,它也無法運行了,怎么能起到監(jiān)控作用呢?
1、創(chuàng)建監(jiān)控文件
打開你喜歡的文本編輯器,新建一個PHP文件,命名為monitor.php。這部分代碼也很簡單,就是兩個函數(shù),一個用于測試服務(wù)器是否可以訪問,另一個用于給你發(fā)送郵件通知
復(fù)制粘貼以下代碼至monitor.php文件:
<?php |
第一個函數(shù)check(),需要傳遞兩個參數(shù):第一$host是你想要監(jiān)控的網(wǎng)站(如:www.ludou.org);第二個$find用于查找你的網(wǎng)站首頁源代碼中的一段字符串,其實添加這個的目的是出于安全考慮,如果你的首頁包含這段字符串,說明你的網(wǎng)頁沒有被修改(如:被駭客惡意修改)。
如果你的網(wǎng)站無法訪問或者安全字符串找不到,將會運行alert()函數(shù),給你發(fā)送告警郵件。請確保你的監(jiān)控主機可以正常使用PHP的發(fā)送郵件函數(shù)mail(),否則將無法發(fā)送郵件,替代方法是使用phpmailer
好了,保存monitor.php,并上傳至你的監(jiān)控服務(wù)器上。
2、設(shè)置一個計劃任務(wù)
現(xiàn)在問題又來了,要想讓monitor.php運行,我們得在瀏覽器中打開http://mymonitoringserver.com/monitor.php才能檢測服務(wù)器狀態(tài),這樣的監(jiān)控也等于白搭。
解決這個問題的辦法是使用計劃任務(wù)(Cron Job),大多數(shù)虛擬主機都提供了這個功能,它可以在你設(shè)定的時刻自動地運行php腳本(例如每小時運行一次monitor.php),關(guān)于計劃任務(wù)的設(shè)定可根據(jù)各人的主機來設(shè)定,遇到問題可以聯(lián)系主機的客服。
設(shè)定好計劃任務(wù)的運行時間間隔,還要設(shè)置計劃任務(wù)的命令,這里提供一條樣例:
lynx > /dev/null -dump http://mymonitoringserver.com/monitor.php
如果你的主機不提供計劃任務(wù)(Cron Job)的功能,這里給你推薦一個免費提供計劃任務(wù)的網(wǎng)站,http://www.setcronjob.com/,申請一個賬號,進行簡單的設(shè)置就可以免費使用計劃任務(wù)功能了。
后記: