Recently, When I click to gather a hot story and occasionally encounter a 500 error, I looked at the apache2.2.3 log (under Windows2003) and noticed the following error:
The network name specified by [warn] (OS 64) is no longer available. : Winnt_accept: asynchronous acceptex failed.
I saw it before, but ignored it. This time, she cannot be spared.
I have read several articles (winnt (MPM)-Apache 2.2 Chinese Version reference manual). It is said that some popular Windows products, such as anti-virus software or virtual private network software, will interfereAcceptex ()
. Add the following statement to the Apache configuration file:
<Ifmodule mpm_winnt.c>
Threadsperchild 1000
Maxrequestsperchild 10000
Win32disableacceptex
</Ifmodule>
Stop Apache and start it again. The new configuration takes effect:
[Notice] Disabled use of acceptex () Winsock2 API
[Notice] mod_python: creating 8 session mutexes Based on 0 Max processes and 1000 Max threads.
[Notice] child 2380: child process is running
[Notice] child 2380: acquired the start mutex.
[Notice] child 2380: Starting 1000 worker threads.
Okay, it seems that the error is no longer coming.
Zheng Yi 20071227