PHP 脚本自动监控 Nginx 504错误

简介: #!/usr/bin/php将该文件命名为 504check.php修改权限 chmod +x 504check.php然后crontab -e添加一行* * * * * /xx/504check.php >/dev/null 2>&1每分钟系统就会自动检测网站是否响应很慢,若如此,则重启。
  1. #!/usr/bin/php

  2. <?php

  3. error_reporting(E_ERROR);

  4. define("EMAIL","lishilongk@163.com.com");//你的email地址

  5. define("TIMEOUT",5);//读取网站超时时间,5秒

  6. function curl_get($url){

  7.                 $curl = curl_init();

  8.                 curl_setopt($curl, CURLOPT_URL, $url);

  9.                 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

  10.                 curl_setopt($curl, CURLOPT_TIMEOUT, TIMEOUT);

  11.                 // Headers

  12.                 $headers = array();

  13.                 $headers[] = "Date: ".date('r');

  14.                 curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);

  15.                 $Data = curl_exec($curl);

  16.                 return $Data ;

  17.  

  18. }

  19.  

  20. function check($d,$k){

  21.         $url = $d;//"http://".$d;

  22.         $html = curl_get($url);

  23.         if( substr_count($html,$k) &lt; 1){

  24.                 mail(EMAIL,"JP 504 timeout for ".$d,$html);

  25.                 exec("/etc/init.d/nginx restart "); //重启nginx

  26.                 exec("/etc/init.d/php-fpm restart");//重启php-fpm

  27.         }

  28. }

  29.  

  30. check("https://www.linuxidc.com","linuxidc.com");

  31. ?>

将该文件命名为 504check.php
修改权限 chmod +x 504check.php

然后crontab -e添加一行

* * * * * /xx/504check.php >/dev/null 2>&1

每分钟系统就会自动检测网站是否响应很慢,若如此,则重启。

目录
相关文章
|
7月前
|
开发框架 应用服务中间件 PHP
Mac Nginx 关联 php 详细配置以及常见错误
Mac Nginx 关联 php 详细配置以及常见错误
141 1
|
8月前
|
运维 监控 应用服务中间件
【运维知识进阶篇】zabbix5.0稳定版详解3(监控Nginx+PHP服务状态信息)(二)
【运维知识进阶篇】zabbix5.0稳定版详解3(监控Nginx+PHP服务状态信息)(二)
147 0
|
8月前
|
缓存 前端开发 JavaScript
PHP - Laravel 创建项目到服务器(nginx、apache)运行(附带目录结构)
PHP - Laravel 创建项目到服务器(nginx、apache)运行(附带目录结构)
216 0
|
网络协议 应用服务中间件 PHP
PHP和nginx是什么关系?是如何交互的?底层原理是什么?
PHP和nginx是什么关系?是如何交互的?底层原理是什么?
476 0
|
网络协议 NoSQL 关系型数据库
【宝塔部署PHP项目】含域名访问部署、IP访问部署、数据库、端口号、Nginx等知识
【宝塔部署PHP项目】含域名访问部署、IP访问部署、数据库、端口号、Nginx等知识
1941 0
【宝塔部署PHP项目】含域名访问部署、IP访问部署、数据库、端口号、Nginx等知识
|
25天前
|
应用服务中间件 Linux PHP
Linux下安装php环境并且配置Nginx支持php-fpm模块
Linux下安装php环境并且配置Nginx支持php-fpm模块
22 0
|
8月前
|
运维 负载均衡 关系型数据库
【运维知识进阶篇】用Ansible Roles重构LNMP架构(Linux+Nginx+Mariadb+PHP),实现4个项目一键部署
【运维知识进阶篇】用Ansible Roles重构LNMP架构(Linux+Nginx+Mariadb+PHP),实现4个项目一键部署
112 0
|
8月前
|
运维 关系型数据库 MySQL
【运维知识进阶篇】集群架构-Nginx实现基础web架构(Linux+Nginx+PHP+Mysql)(二)
【运维知识进阶篇】集群架构-Nginx实现基础web架构(Linux+Nginx+PHP+Mysql)(二)
202 0
|
8月前
|
消息中间件 NoSQL 关系型数据库
Linux安装 OpenResty、Nginx、PHP、Mysql、Redis、Lua、Node、Golang、MongoDB、Kafka等
Linux安装 OpenResty、Nginx、PHP、Mysql、Redis、Lua、Node、Golang、MongoDB、Kafka等
104 0
|
4月前
|
NoSQL 关系型数据库 应用服务中间件
Linux安装 OpenResty、Nginx、PHP、Mysql、Redis、Lua、Node、Golang、MongoDB、Kafka等
Linux安装 OpenResty、Nginx、PHP、Mysql、Redis、Lua、Node、Golang、MongoDB、Kafka等
88 0