2012年3月4日 星期日

Apache調教

打開apache2.2的錯誤日誌:
[Thu Feb 16 15:37:18 2012] [error] (OS 10038)在一個非套接字上嘗試了一個操作。  : Child 5316: Encountered too many errors accepting client connections. Possible causes: dynamic address renewal, or incompatible VPN or firewall software. Try using the Win32DisableAcceptEx directive.
這個錯誤是CPU佔用率一直是100%
然後上網查了解決辦法:
httpd.conf文件中加入代碼:
<IfModule mpm_winnt.c>
ThreadsPerChild 1000
MaxRequestsPerChild 10000
Win32DisableAcceptEx
</IfModule>
重啟apache,發現
Cpu佔用率降下來了。
原因:apache2.0.49以上的accepteExwindows下出現這個問題。
[Thu Feb 16 16:49:10 2012] [error] (OS 10038)在一個非套接字上嘗試了一個操作。  : Too many errors in select loop. Child process exiting.
[Thu Feb 16 16:49:10 2012] [notice] Child 4216: Exit event signaled. Child process is ending. 
然後在dos運行命令netsh winsock reset再重啟apache
在瀏覽器裡面輸入localhost終於行了