camry 2015-2-6 16:10
在 CentOS 6.6 下安裝 mod_limitipconn 限制Apache IP連接數
如果您的網站是很受人歡迎的網站,可能會遭受到來自網路上一大堆惡意的多次連線,造成網路的阻塞,這時您可以安裝 mod_limitipconn 來解決這個問題。<br><br>mod_limitipconn 是 Apache 限制 IP 連線數的 Module, Client 端使用多線的下載會對 Server 造成較高的 Loading, 其實速度也不見得會比較快.<br><br>在這邊我們用的是 rpm 的版本<br><br>安裝步驟:<br># rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm<br># yum install mod_limitipconn<br><br>這樣就安裝好了...然後加到 httpd.conf, 本例是每個 IP 限制 20 個連線, 圖檔不限制<br>[quote]<br># Limit IP Connection - mod_limitipconn<br>MaxConnPerIP 20<br>NoIPLimit images/*<br>[/quote]<br><br>接著新增一隻檔案.載入module<br># vi /etc/httpd/conf.d/limitipconn.conf<br>[quote]<br><IfModule mod_status.c><br><br> # This is always needed<br> ExtendedStatus On<br><br> # mod_limitipconn configuration<br> LoadModule limitipconn_module modules/mod_limitipconn.so<br><br> # A global default configuration doesn't make much sense. See the README<br> # from the mod_limitipconn package for configuration examples.<br><br></IfModule><br>[/quote]<br><br>重啟 Apache 後, 查看 phpinfo() 若 Loaded Modules 有看到 mod_limitipconn 表示已經有載入<br>使用多線下載軟體如 Flashget 測試, 線程開超過限制的量, 觀察 access log,<br>若看到到 Apache status code 503 (Service Temporarily Unavailable)<br>即表示運作正常, 超出的線程被限制住了.