我们如何才能dynamic地限制每个用户的nginx上传/下载速度?

可以使用特定位置的速率限制来限制速度。

但是,我们如何dynamic地做到这一点呢?

假设您已经付费与非付费用户,并且您希望为付费用户提供更高的带宽。

我们需要dynamic检查数据库,并为这个特定的用户群提供一定的速度。

你有任何nginx模块?

    是的,您可以对特定位置进行限制。

    location /something/ { set $limit_rate 4k; } 

    您还可以用if语句来包围limite_rate,以便dynamic地控制费率。 有关限制速率的更多详细信息,请参阅此链接: http ://wiki.nginx.org/NginxHttpCoreModule#limit_rate

    还有一个模块你应该注意: http : //wiki.nginx.org/NginxHttpLimitZoneModule

    该模块允许您设置连接数量的限制。 所以,即使你设置了一个低限,如果他们只能build立10个连接,你的限制也是没有意义的。

    我build议你有私人和公共用户获得不同的链接,以便nginx可以很容易地区分用户types和validation您的应用程序层的安全性。