故障時自動重啟Apache,故障重啟Apache
最近不知道為什麼部落格總是莫名其妙地掛掉,
重啟Apache就好了,我也懶得去研究到底是哪裡出了問題。
只是每次都需要手工SSH上去重啟Apache,有點麻煩。
而且有時候在夜裡掛掉,一晚上部落格就都不能訪問了。
後來終於忍無可忍,寫了一段指令碼來做這件事,代碼如下:
#!/bin/shif ( wget --timeout=5 -q --spider http://leonax.net/ )thenecho "ok"else/etc/init.d/httpd restartecho "httpd restarted"fi
原理很簡單,就是嘗試訪問一下部落格(第三行),
如果有什麼問題,就重啟Apache(第七行)。
其中wget的參數–spider表示只是訪問一下,並不下載內容。
如果你喜歡的話,還可以在else中加一段發郵件的代碼,
把Apache的error log直接發到郵件,方便分析,不過我就懶得做了。
然後把這段代碼儲存為check_apache.sh,添加到crontab中:
*/5 * * * * /var/www/check_apache.sh
其中*/5表示每5分鐘運行一下check_apache.sh。
注意開啟crontab的時候要使用sudo,因為重啟Apache需要sudo許可權。
轉載自:http://leonax.net/c/product/software/apache/
如果何解決apache停止回應後的重啟問題
首先請說明一下你用的是什麼linux系統,不同的linux命令是不太一樣的。
我個人使用的是ubuntu系統,重啟apache的命令是sudo /etc/init.d/apache2 restart
或者分開先停止在啟動兩個步驟也可以:先 sudo /etc/init.d/apache2 stop 再
sudo /etc/init.d/apache2 start
補充回答:
試試下面的方法看行不:
1、關閉SELINUX的方法:
# vi /etc/selinux/config
將 SELINUX 的值改成 disabled , 即: SELINUX=disabled
2、不關閉SELINUX的方法:
# setenforce 0
# chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t /usr/local/apache/modules/libphp5.so
# service httpd restart
# setenforce 1
網站老出現開不了的情況 然後重啟apache就又可以開啟了 是什問題 是伺服器問題 還是apache配置問題
都沒有問題。重啟能正常的話。