簡單利用Apache Logs Viewer工具分析錯誤日誌和頻繁掛掉原因
最近網站換成了騰訊雲的伺服器, 不知道為什麼dmz社群 apache老是掉線,更無語的是前幾天好不容易有點時間回下老家休息中途被使用者告知dmz社群無法訪問,大中午的個騎著個小毛驢重大山裡出來(大山沒訊號,收到使用者資訊純屬偶然),心中對於騰訊雲更是一萬個草泥馬奔騰著,不過分析日誌之後才發現我冤枉騰訊雲了!
日誌分析工具(Apache Logs Viewer)下載地址
Apache Logs Viewer是英文版的(剛開始安裝完成的時候我多麼希望 選單欄中能夠出現一個 language 選項 並出現一個china or 中國),可惜失望了,而且找了很久也沒找到漢化版的!
下載安裝好Apache Logs Viewer工具後開始分析:
第一步:
首先我們找到apache錯誤日誌檔案,也就是apache安裝目錄下的 logs/error.log 檔案;
第二步:
將error.log檔案拖到Apache Logs Viewer工具中開啟, apche版本號可以自己在安裝目錄下的 bin/httpd.exe 的詳細資訊(右鍵->屬性)中檢視,一切選擇後點擊OK開始分析日誌!
第三步:
開始分析網站錯誤,因為我前期部署問題導致錯誤有點多,足足70餘兆!
A、因為DMZ社群所使用的Discuz系統是,使用的資料庫連結是mysql連結<ignore_js_op>
解決方式:將php版本改為5.3 或 5.3以下版本即可
B、網站被黑客掃描
處理方式:將伺服器中的一些備份或者shell等 能獲取伺服器資訊或者有特殊許可權的檔案命名嚴格或者奇葩一點!
C、DMZ社群網站apache頻繁掉線(因為15:40我發現dmz社群無法訪問,而15:00卻只有15:30一個錯誤程式碼(Code)為error的)
錯誤資訊:[pid 6120:tid 4460] AH00326: Server ran out of threads to serve requests. Consider raising the ThreadsPerChild setting
翻 譯 後 :[pid 6120:tid 4460] AH00326:伺服器用盡執行緒來處理請求。 考慮提高ThreadsPerChild設定
Apche掉線原因:伺服器執行緒不夠,導致apache錯誤關閉
解決方式: 開啟conf/httpd.conf在後方新增上以下程式碼, 將apache執行緒擴大即可,我這裡是擴大為512執行緒;
1 2 3 4 |
<
IfModule mpm_winnt_module
>
ThreadsPerChild
512
MaxRequestsPerChild
0
<
/
IfModule
>
|
這樣的錯誤分析我也是第一次,以後有更多的錯誤資訊和解決傳送我在更新!
原文地址:http://www.dmzshequ.com/thread-3803-1-1.html