Apache允許為請求開的最大進程數是256,MaxClients的限制是256.如果用戶多了,用戶就只能看到Waiting for reply....然後等到下一個可用進程的出現。這個最大數,是Apache的程序決定的--它的NT版可以有1024,但Unix版只有256,你可以在src/include/httpd.h中 看到: #ifndef HARD_SERVER_LIMIT #ifdef WIN32 #define HARD_SERVER_LIMIT 1024 #else #define HARD_SERVER_LIMIT 256 #endif #endif 你可以把它調到1024,然後再編譯你的系統。記得在httpd.conf裡也 要更改相應配置,缺省好象是150。就下面的機器來說,調到512頂 死了,如果再高,系統受不了。
另外,一些系統也限制了一個用戶的最大進程數。你可以用ulimit -u 來看。Linux一般是256。因此你要真想讓Apache超過這個數,就得調整 這個參數: ulimit -u unlimited 這個參數要在Apache運行之前修改,因此建議加到apachectl裡: case $ARG in start) if [ $RUNNING -eq 1 ]; then echo "$0 $ARG: httpd (pid $PID) already running" continue 改成 case $ARG in start) ulimit -u unlimited if [ $RUNNING -eq 1 ]; then echo "$0 $ARG: httpd (pid $PID) already running" continue