2008年2月29日

apache error_log 一直出現 (OS 64)指定的網路名稱無法使用 winnt_accept: Asynchronous AcceptEx failed.

這幾天會議系統的 web 服務老是停擺,查看了 apache 的 error_log 發現了一堆異樣的訊息

[warn] (OS 64)指定的網路名稱無法使用。 : winnt_accept: Asynchronous AcceptEx failed.
[notice] Parent: child process exited with status 4294967295 -- Restarting.

以錯誤訊息當關鍵字在 google 查了一下覺得可能是 AcceptEx() 這個東西造成的,在 apache 的 httpd.conf 裡設定將AcceptEx()關掉,觀察到現在,錯誤訊息果然就不會出現了而且服務執行也正常了。

httpd.conf 的設定:
找到 mpm_winnt 區段,並新增 Win32DisableAcceptEx 參數並重新啟動 apache。
<IfModule mpm_winnt.c>
Win32DisableAcceptEx # <--加上這行
ThreadsPerChild 250
MaxRequestsPerChild 0
</IfModule>

參考: http://httpd.apache.org/docs/2.0/mod/mpm_winnt.html#win32disableacceptex

沒有留言:

張貼留言