1 制作一個bat文件在計劃任務里面定期(每天夜里)執行:然后刪除舊的日志文件,避免文件過大
apache -k shutdown
move /y access_log access_log.old
move /y error_log error_log.old
apache -k start
2 [httpd.conf]
<ifmodule mpm_winnt.c>
threadsperchild 250
maxrequestsperchild 30 <- 這個可以為100,但最好不要為0
win32disableacceptex <-這個
</ifmodule>
3 使用更詳細日志捕捉死機時訪問的頁面
logformat "%h %l %u %t /"%r/" %>s %b /"%{referer}i/" /"%{user-agent}i/"" combined
記錄refer可以幫助確認發生問題的請求來自什么頁面,以判斷是否受到攻擊
可以使用"%400,501{user-agent}i" "%!200,304,302{referer}i" 來捕捉特定需要的log
4 在計算機管理->性能中,啟動性能日志和警報->計數器日志->system overview。根據一段時間的監測的數據,在系統監視器里面查看,找到發生死機的異常時候,內存,cpu的極值的規律。然后在警報里面,如果超過,或接近某個極值,執行重起apache命令。
5 無論如何在你的程序里面加上緩存機制:無論是通過生成靜態html頁面或者設置meta expired為幾分鐘
新聞熱點
疑難解答