利用Shell 脚本实时检测Linux Nginx运行状态 异常自动重启
以前编写了一个监控 MySQL 服务状态的脚本,它能够自动重启数据库服务,以应对数据库意外停止的紧急情况。现在,随着技术的发展,又遇到了新的挑战——新购置的服务器上,NGINX服务有时会异常停止。经过一番努力,成功解决了这个问题,并决定分享一个监控 Nginx 状态的shell脚本,以自动重启服务,确保 Nginx 始终在线。当然,如果 Nginx 频繁自动重启,那么就需要深入调查并解决根本问题。
1.宝塔面板:
使用宝塔面板的用户可以轻松实现监控。只需进入“计划任务”菜单,选择“shell 脚本”作为任务类型,并将执行周期设置为每 15 分钟一次。然后,在“脚本内容”中填入以下代码:
这样,系统就会每 15 分钟自动检查 Nginx 是否运行,如果发现服务已停止,就会自动启动。请注意,您可以根据需要调整时间间隔。
2.其他通用
对于使用其他面板或程序的用户,可以尝试以下通用方法:
2.1 编写脚本
首先,将以下代码保存为名为`dr_check_nginx.sh`的文件,并上传至服务器的根目录。然后,通过执行命令`chmod +x /root/dr_check_nginx.sh`来赋予该脚本执行权限。
2.2 设置定时任务
使用`crontab -e`命令添加一个定时任务,您可以根据需要自行调整检查时间间隔,例如每 15 分钟一次。
3. 监控并重启 NMP 服务
如果您希望同时监控并重启 php、nginx、mysqld 和redis服务,可以使用以下脚本。您可以根据服务器环境自行修改或删除部分内容。使用方法请参考第 2 节中的说明。
阅读剩余
网站声明
本站内容可能存在水印或引流等信息,请擦亮眼睛自行鉴别;以免上当受骗;
本站提供的内容仅限用于学习和研究目的,不得将本站内容用于商业或者非法用途;