我可以同时使用 mod_cband 和 mod_vhost_alias 吗?

我可以同时使用 mod_cband 和 mod_vhost_alias 吗?

基本上,我运行 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 日志文件并使用生成的统计数据作为带宽统计工具。

相关内容