(相關(guān)資料圖)
前言
最近我的服務(wù)總是被CC攻擊導(dǎo)致了nginx崩潰,服務(wù)不可用
我寫了個(gè)檢測(cè)nginx服務(wù)狀態(tài)并檢查崩潰重啟的腳本
#nginx service #判斷是否為root運(yùn)行if [ $(id -u) != "0" ] then echo "請(qǐng)使用root運(yùn)行此腳本" exit 1 fi netstat -anop | grep 0.0.0.0:80#判斷80端口服務(wù)是否在運(yùn)行if [ $? -ne 1 ] then exit fi #輸出重啟日志echo $(date +%T%n%F)" Restart nginx Services " >> nginx.log #/usr/local/nginx/sbin/nginx -s quit#啟動(dòng)nginx服務(wù)/usr/local/nginx/sbin/nginx
寫完先賦個(gè)權(quán)限
chmod 755 nginx_restart.sh
然后添加定時(shí)任務(wù)(定時(shí)檢查)
crontab -e
*/5 * * * * sh /usr/local/nginx/sbin/nginx_restart.sh
每5分鐘檢查nginx服務(wù)是否正常
crontab -l
crontab -l 檢查下定時(shí)任務(wù)是否正常
當(dāng)然這個(gè)只適用于普通方式部署的nginx對(duì)于docker部署的,需要自行調(diào)整代碼