nginx
nginx は同時 IP の数を制限します。これは、同じ IP からサーバーへの同時接続の数を制限することも意味します
1。limit_zone
この変数を追加すると、 http
vi /usr/local/nginx/conf/nginx.conf でのみ使用できます
limit_zone one $binary_remote_addr 10m;
2.limit_conn を追加します
この変数は http、server、 location
サイトを 1 つだけ制限するので、サーバーに追加します
vi /usr/local/nginx/conf/host/gaojinbo.com.conf
limit_conn one 10;
3. nginx を再起動します
killall nginx -hup
コードをコピーします。コードは次のとおりです。
vi /usr/local/nginx/conf/vhosts/down.redocn.com.conf
limit_zone one $binary_remote_addr 10m;
server
{
listen 80;
server_name down.redocn.com;
indexindex.htmlindex.htmindex.php;
root /data/www/wwwroot/down;
error_page 404 /index.php;
# サーバー エラー ページを静的ページにリダイレクトします /50x.html
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html ;
}
#ゾーン制限
location / {
limit_conn one 1;
limit_rate 20k;//速度制限
}
# 静的ファイルを提供します
location ~ ^/(images|javascript|js|css|flash|media|static)/ {
root /data/www/wwwroot/down;
有効期限は 30 日;
}
}
apache
Apache サーバーが同じ IP アドレスへの接続を制限できるようにするには、mod_limitipconn が必要です。通常、手動でコンパイルする必要があります。ただし、モジュールの作成者は、独自の Apache バージョンに応じて直接使用できる、コンパイルされたモジュールもいくつか提供しています。 ###1。コンパイル方法:
tar zxvf mod_limitipconn-0.xx.tar.gz
cd mod_limitipconn-0.xx
make apxs=/usr/local/apache/bin/apxs —–独自の方法に従う必要がありますここのルール パス設定
make install apxs=/usr/local/apache/bin/apxs —–ここで独自のパスに従って設定する必要があります
2.rpm インストール方法:
mod_limitipconn-0 をダウンロードします.xx.rpm を直接
rpm -uhv mod_limitipconn-0.xx.rpm
次に、生成された mod_limitipconn.so ファイルが Apache サーバー モジュール ディレクトリにあることを確認します。 ###3。 httpd.conf ファイルを編集します:
コードをコピーします コードは次のとおりです:
extendedstatus on
loadmodule limitipconn_module modules/mod_limitipconn.so < ifmodule mod_limitipconn.c >< ; location / > # / すべての仮想ホストのディレクトリ
maxconnperip 3 # IP ごとに許可される同時接続は 3 つだけです
noiplimit image/* # イメージに対する IP 制限はありません
< /location> ;
< location /mp3 > #すべてのホストの/mp3 ディレクトリ
maxconnperiip 1 #IP ごとに許可される接続要求は 1 つだけです
onlyiplimit audio/mpeg video #この制限はビデオ内のファイルにのみ適用され、オーディオ形式
< /location >
< /ifmodule>
以上がnginx と apache 間の同時 IP アクセスを制限する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。