PHP服务器状态监控实现程序

2020-02-01 06:02栏目:编程
TAG:

本文实例讲述了PHP实现服务器状态监控的方法。分享给大家供大家参考。具体分析如下:

这两天抽空写了个网页服务器状态监控,看到有朋友说需要,那我就放出来吧。很简单的东西。

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;$address = 'admin@admin.com'; //接收邮箱//更改这里的内容为你要监控的IP:$server_ip_list = array('61.135.169.121','221.204.173.200','173.194.127.83');然后访问你 代码如下: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; $address = 'admin@admin.com'; //接收邮箱 $mail->AddAddress; //$mail->AddAttachment("images/phpmailer.gif"); // attachment 附件 //$mail->AddAttachment("images/phpmailer_mini.gif"); // attachment if { echo 'Mailer Error: ' . $mail->ErrorInfo; } else { // echo "Message sent!恭喜,邮件发送成功!"; }}//check server statusfunction checkServerSatatus {$str = null;$fp = @fsockopen($ip,80,$errno,$errstr,10);if { return false;} else { fclose; return true;}}$server_ip_list = array( '61.135.169.121', '221.204.173.200', '173.194.127.83' );?>

打开压缩包里面的status.php文件。编辑这里的内容为你自己的邮箱信息。

服务器状态监控

 代码如下

服务器在线状态监控

ID

Location

Address

Status

$val) { $api = file_get_contents('].''); $json = json_decode; $result = $json->data; $i++; if (checkServerSatatus($server_ip_list[$key])) { echo "

{$i}

{$result->country}{$result->region}{$result->city}

{$server_ip_list[$key]}

在线

"; } else { echo "

{$i}

{$result->country}{$result->region}{$result->city}

{$server_ip_list[$key]}

不在线

"; $subject = "您的服务器 {$server_ip_list[$key]} 无法访问!"; $body = "您的服务器{$server_ip_list[$key]} 无法访问,此邮件根据你设置的监控频率发送,当服务器恢复正常邮件自动停止发送!"; sendmail; } } ?>

注意:include './smtp/class.smtp.php';include './smtp/class.phpmailer.php';文件可以下载phpmailer包然后我们在包里面这两个文件复制出来然后即可使用了。

ps:这个只是一个非常的简单的不能很好的监控到服务器了,现在有很多成熟的免费产品都可以更好的达到我们要求,如dnspod里面有一个D监控了,然后我们就可以操作。

希望本文所述对大家的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'
);

然后访问你

完整代码

版权声明:本文由bob体育app发布于编程,转载请注明出处:PHP服务器状态监控实现程序