![我可以同时使用 mod_cband 和 mod_vhost_alias 吗?](https://linux22.com/image/636721/%E6%88%91%E5%8F%AF%E4%BB%A5%E5%90%8C%E6%97%B6%E4%BD%BF%E7%94%A8%20mod_cband%20%E5%92%8C%20mod_vhost_alias%20%E5%90%97%EF%BC%9F.png)
基本上,我运行 VPS 并在其上托管我客户的网站。我已设置 mod_vhost_alias 以使用域作为客户用户帐户主文件夹,例如 /home/www.example.com。我也想使用 mod_cband 来限制每个域的带宽。我知道我可以为每个虚拟主机执行此操作,但我已使用 mod_vhost_alias 进行设置。这可能吗?
供您参考,这是我目前所得到的......
<VirtualHost *:80>
# Doesn't matter as long as it's fake rlly
ServerName bogusname
UseCanonicalName Off
VirtualDocumentRoot /home/%0/www
# Bandwidth stuff
CBandDefaultExceededURL http://clients.bradreed.co.uk/bandwidth_exceeded.html
CBandLimit 100G
# The following doesn't work
CBandScoreboard /var/www/scoreboard/%0
</VirtualHost>
谢谢 :)
答案1
简短的回答是“不”。正如你所发现的,扩展%0
特定于 mod_vhost_alias指令并且不受其他模块支持。
主要问题是 Apache 的设计基于静态配置,mod_vhost_alias 只是一个例外,一个 hack。这使得其他模块和指令的动态配置变得困难。
如果您想使用 mod_cband,据我所知,您必须开始使用特定于客户端的虚拟主机条目,并在有新客户端加入时重新启动您的网络服务器。
我认为大多数具有 mod_vhost_alias 设置的提供商都会解析 apache 日志文件并使用生成的统计数据作为带宽统计工具。