解決APACHE伺服器不定時掛掉故障一例

2022-09-23 22:54:12 字數 1380 閱讀 5069

圓嘟嘟選擇的主機搭配是windows 2003 server+apache+php+mysql,當**初步上線測試後,我在主機運維方面遇到了很多問題,這裡先說乙個比較罕見,而且也讓我頭疼好幾天的問題,就是apache在執行一段不定時的時間後,就自動停止了,windows系統日誌顯示是:apache2 服務因 1 (0x1) 服務性錯誤而停止。而apache的error日誌裡最後的內容如下:

[thu mar 21 01:08:09.187500 2013] [mpm_winnt:notice] [pid 2988:tid 1696] ah00358: child: process exiting because it reached maxconnectionsperchild. signaling the parent to restart a new child process.

[thu mar 21 01:08:09.203125 2013] [mpm_winnt:notice] [pid 2992:tid 436] ah00424: parent: received restart signal -- restarting the server.

[thu mar 21 01:08:11.000000 2013] [ssl:warn] [pid 2992:tid 436] ah01873: init: session cache is not configured [hint: sslsessioncache]

[thu mar 21 01:08:11.187500 2013] [mpm_winnt:notice] [pid 2988:tid 1696] ah00364: child: all worker threads h**e exited.

別的內容似乎都正常,除了ssl的警告外,一開始是搞不清楚狀況,以為是ssl配置有問題,就對ssl進行了配置,但配置完以後,是不提示「session cache is not configured」了,但故障依然,我又繼續從apache的錯誤日誌中尋找線索,這次我用到的關鍵字是「maxconnectionsperchild」,這個配置可能很多人也不知道是什麼,這是apache2.4才改成這樣的,原來叫maxrequestsperchild,意思是指子程序的最大連線數,當達到設定值以後,apache就會結束當前的子程序,釋放記憶體,再開啟新的子程序,這個設定是在httpd-mpm.conf裡面的,因為是執行在windows環境下,所以對就的是winnt mpm,原來的設定是:

threadsperchild 250

maxconnectionsperchild 10000

都說為了防止記憶體溢位,maxconnectionsperchild不要設成0,但可以考慮設成小的數值,於是我設成500,繼續測試,但不管我改成多少,apache還是依然不定時就掛了,依照網上有關的方法我全試了個遍,終究沒有解決這個問題,我都動了重置系統再來的念頭了...

伺服器出現不定時宕機的原因

我們伺服器dellr10 windows2003r2,特別說明,均正版。出現如題的問題 1.首先排除硬體原因 新版dset日誌抓取工具的使用說明 這個配置可以採用2.1的版本 如果自己可以看懂生成的日誌,更好,如果看不懂,可以讓dell的工程師們幫忙檢視。2.然後開始檢視作業系統的原因,首先可以開啟...

伺服器安裝apache伺服器

1.環境 centos7 2.鏈結伺服器 ssh username ip 3.安裝apache 4.設定apache在伺服器啟動時執行 5.在apache配置檔案中設定網域名稱 vi etc httpd conf httpd.conf,找到 servername 新增 網域名稱 80 儲存並退出。6...

搭建web伺服器 Apache伺服器

一.安裝apache 二.載入php解析模組,並指定模組處理檔案的型別 編輯httpd.conf 檔案 so檔案是linux下的c編譯的可執行檔案 這一項可以改為你真正願意放置專案檔案的磁碟 寫乙個指令碼測試一下,如果解析成功意味著php解析器載入成功 三.讓php處理資料庫 放到documentr...