Apache2 限制網頁下載速度 - bw

要限制 網站/網頁/檔案 下載速度,  Apache 有提供 bw 的模組, 可以設定最大下載速度.

Apache2 bw 模組安裝

  1. apt-get install libapache2-mod-bw
  2. a2enmod bw # 啟用
  3. /etc/init.d/apache2 restart

bw 模組設定

簡單範例

於 /etc/apache2/sites-available/example.conf 加上下述:

BandwidthModule On
ForceBandWidthModule On
# 512kb * 1024
Bandwidth all 524288

詳細範例

<VirtualHost *:80>
        ServerName example.com
        ServerAlias www.example.com

        # turn bw limitation on
        BandwidthModule On

        # force limitation on every request
        ForceBandWidthModule On

        # limit to 512kB/s
        Bandwidth all 524288

        DocumentRoot /var/www/example
</VirtualHost>

設定完成後, 重新啟動 /etc/init.d/apache2 restart 即可.

測試

  • wget http://example.com/a.rar

    --2010-10-27 16:51:11--  http://example.com/a.rar
    正在查找主機 example.com... 123.123.123.123
    正在連接 example.com|123.123.123.123|:80... 連上了。
    已送出 HTTP 要求,正在等候回應... 200 OK
    長度: 5202332 (5.0M) [application/rar]
    Saving to: `a.rar'

    100%[========================================================================>] 5,202,332    507K/s   in 10s    

    2010-10-27 16:51:21 (508 KB/s) - `a.rar' saved [5202332/5202332]

相關網頁


關於 Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.
本篇發表於 My_Note-Unix。將永久鏈結加入書籤。

Apache2 限制網頁下載速度 - bw 有 2 則回應

  1. 高見龍 說道:

    抱歉不知道是不是我看錯,我看到上面apache的設定Bandwidth all 204800(limit to 200kB/s),但用wget卻可測出508 KB/s的速度?

  2. Tsung 說道:

    喔喔, 我的設定是在上面那個 512KB/s, 下面那個設定只是範例.
    我還是把兩個都改一致好了, 以免誤會, 感謝提醒~ Orz.

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料