PHP实现服务器状态监控的方法_php技巧
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了PHP实现服务器状态监控的方法_php技巧,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含4679字,纯文字阅读大概需要7分钟。
内容图文
![PHP实现服务器状态监控的方法_php技巧](/upload/InfoBanner/zyjiaocheng/264/037e282712d246b780eacbc65663f5d9.jpg)
PHP服务器状态监控对于很多朋友来讲都没做,只有看到网站挂了才知道,这种半夜网站关了是不知道情况了,对于网站也非常不好,为此这两天抽空写了个网页服务器状态监控,看到有朋友说需要,那我就放出来吧。很简单的东西。
使用方法:
打开压缩包里面的status.php文件。编辑这里的内容为你自己的邮箱信息。代码如下:
代码如下:$mail->Host = 'smtp.exmail.qq.com'; // SMTP 服务器
$mail->Port = 25; // SMTP服务器的端口号
$mail->Username = 'admin@xxx.com'; // SMTP服务器用户名
$mail->Password = 'password'; // SMTP服务器密码
$mail->SetFrom('admin@xxx.com','Status');
$mail->AddReplyTo('admin@xxx.com','Status');
$mail->Subject = $subject;
$mail->AltBody = 'To view the message, please use an HTML compatible email viewer!'; // optional, comment out and test
$mail->MsgHTML($body);
$address = 'admin@admin.com'; //接收邮箱
//更改这里的内容为你要监控的IP:
$server_ip_list = array(
'61.135.169.121',
'221.204.173.200',
'173.194.127.83'
);
然后访问你http://yourdomain.com/status.php文件,即可看到当前服务器状态并且自动发送邮件到你设置的邮箱。如果需要自动监控,请添加Cron任务或者使用什么监控宝之类的!
完整代码如下:
代码如下:<?php
/*
* 服务器状态监控
*/
header('Content-type:text/html;charset=utf-8');
include './smtp/class.smtp.php';
include './smtp/class.phpmailer.php';
function sendmail($subject = '',$body = '') {
date_default_timezone_set('Asia/Shanghai');//设定时区东八区
$mail = new PHPMailer(); //new一个PHPMailer对象出来
// $body = eregi_replace("[]",'',$body); //对邮件内容进行必要的过滤
$mail->CharSet ="UTF-8";//设定邮件编码,默认ISO-8859-1,如果发中文此项必须设置,否则乱码
$mail->IsSMTP(); // 设定使用SMTP服务
$mail->SMTPAuth = true; // 启用 SMTP 验证功能
$mail->Host = 'smtp.exmail.qq.com'; // SMTP 服务器
$mail->Port = 25; // SMTP服务器的端口号
$mail->Username = 'admin@xxx.com'; // SMTP服务器用户名
$mail->Password = 'password'; // SMTP服务器密码
$mail->SetFrom('admin@xxx.com','Status');
$mail->AddReplyTo('admin@xxx.com','Status');
$mail->Subject = $subject;
$mail->AltBody = 'To view the message, please use an HTML compatible email viewer!'; // optional, comment out and test
$mail->MsgHTML($body);
$address = 'admin@admin.com'; //接收邮箱
$mail->AddAddress($address, '');
//$mail->AddAttachment("images/phpmailer.gif"); // attachment 附件
//$mail->AddAttachment("images/phpmailer_mini.gif"); // attachment
if(!$mail->Send()) {
echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
// echo "Message sent!恭喜,邮件发送成功!";
}
}
//check server status
function checkServerSatatus($ip) {
$str = null;
$fp = @fsockopen($ip,80,$errno,$errstr,10);
if (!$fp) {
return false;
} else {
fclose($fp);
return true;
}
}
$server_ip_list = array(
'61.135.169.121',
'221.204.173.200',
'173.194.127.83'
);
?>
服务器在线状态监控
ID | Location | Address | Status |
{$i} | {$result->country}{$result->region}{$result->city} | {$server_ip_list[$key]} | 在线 |
{$i} | {$result->country}{$result->region}{$result->city} | {$server_ip_list[$key]} | 不在线 |
注意:
include './smtp/class.smtp.php';
include './smtp/class.phpmailer.php';
文件可以下载phpmailer包然后我们在包里面这两个文件复制出来然后即可使用了。
ps:这个只是一个非常的简单的不能很好的监控到服务器了,现在有很多成熟的免费产品都可以更好的达到我们要求,如dnspod里面有一个D监控了,然后我们就可以操作。
希望本文所述对大家的PHP程序设计有所帮助。
内容总结
以上是互联网集市为您收集整理的PHP实现服务器状态监控的方法_php技巧全部内容,希望文章能够帮你解决PHP实现服务器状态监控的方法_php技巧所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。