在apache下限制每个虚拟主机的并发数 --From uudangdang.com

来源:互联网 发布:股市实战真功夫淘宝网 编辑:程序博客网 时间:2024/06/01 08:23
在apache下限制每个虚拟主机的并发数
作者: simonwoo
发表: Sat, 05-Mar-2005

  

下载模块:
http://www.nowhere-land.org/programs/mod_vhost_limit/mod_vhost_limit-0.4.tar.gz

官方网址:
http://www.nowhere-land.org/programs/mod_vhost_limit/

安装:
apxs -c mod_vhost_limit.c -o /path/to/libexec/mod_vhost_limit.so

在 httpd.conf 加入:
LoadModule vhost_limit_module libexec/mod_vhost_limit.so
AddModule mod_vhost_limit.c

配置:
MaxClients 150
ExtendedStatus On

NameVirtualHost *

<VirtualHost *>
ServerName server1
DocumentRoot /some/where/1
MaxVhostClients 100
</VirtualHost>

<VirtualHost *>
ServerName server2
DocumentRoot /some/where/2
MaxVhostClients 30
</VirtualHost>

<VirtualHost *>
ServerName server3
DocumentRoot /some/where/3
</VirtualHost>

其中: server1 被限制为 100 个并发线程数。 server2 被限制为 30 个并发线程数。 server3 没有被限制。
注:需 mod_status 的 ExtendedStatus On 支持!!
如超出限制的并发数在客户端就会出现503错误:
Service Temporarily Unavailable
The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
--------------------------------------------------------------------------------
Apache/1.3.27 Server at server1 Port 80
在 error_log 中将会有类似以下的错误提示:
[Mon Jun 23 15:22:24 2003] [error] client access to server1 deferred, MaxVhostClients 100 exceeded

希望对大家有用!!
原创粉丝点击