文章来源:http://www.imtr.cn/html/n214.html
一个简单的PHP。批量监控网站返回码是否为200。可以整合一个邮件发送功能,如果发现返回状态不是200,发送提醒邮件或短信提醒!
<?php //脚本用于监控网站的运行状态,及时得到反馈 header('Content-type: text/html; charset=utf-8'); //要监控的网站列表 $urls=array( 'www.baidu.com', 'www.dedecmsok.com', 'www.dedecmsok.com/aa.html', ); foreach ($urls as $url) { $resCode=getCode($url); if (strpos($resCode,'200')===false) { echo "<a href='{$url}'>{$url}</a> 不能正常访问,错误码:{$resCode}<br/>"; }else{ echo "<a href='{$url}'>{$url}</a> 正常访问<br/>"; } } //返回页面状态码 function getCode($url) { $ch = curl_init (); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_TIMEOUT, 200); curl_setopt($ch, CURLOPT_HEADER, FALSE); curl_setopt($ch, CURLOPT_NOBODY, true);//body就不要了,我们只需要head curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, FALSE);//不进行跳转 curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET'); curl_exec($ch); $httpCode = curl_getinfo($ch,CURLINFO_HTTP_CODE);//取出返回的状态码 curl_close($ch);//用完记得关闭 return $httpCode; } ?>
执行结果如下:
www.baidu.com 正常访问
www.dedecmsok.com 正常访问
www.dedecmsok.com/aa.html 不能正常访问,错误码:404
常用的Http请求返回码的意思:
200 页面正常访问
301 页面重定向,永久
302 页面临时重定向
404 页面未找到
常常遇到的也就这几种返回码。我们常说的301跳转的意思就是把某页面永久定向到另一个页面。
原文地址:http://www.imtr.cn/html/n214.html