nginx使用Limit Requests模块限制单个IP请求速率的方法
[ 2016-08-03 22:02:28 | 作者: admin ]
p.s. nginx里面有2个模块可以限制客户端的访问频率:limit_req和limit_conn ,具体的区别可以再查,这里只讲述 limit_req ,一般也够用了。
p.s. 如果修改配置不生效,需要杀进程重新开 nginx 。参考: http://blog.xg98.com/article.asp?id=2656
本文介绍下,nginx环境中使用Limit Requests模块,限制单个IP请求速率的方法,有需要的朋友,参考下吧。
Limit Requests模块可以限制单个客户端发送请求的速率。
示例配置如下:
阅读全文…
p.s. 如果修改配置不生效,需要杀进程重新开 nginx 。参考: http://blog.xg98.com/article.asp?id=2656
本文介绍下,nginx环境中使用Limit Requests模块,限制单个IP请求速率的方法,有需要的朋友,参考下吧。
Limit Requests模块可以限制单个客户端发送请求的速率。
示例配置如下:
http {
limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;
server {
location ~ .*\.(php|php5)?$
...limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;
server {
location ~ .*\.(php|php5)?$
阅读全文…
nginx geo使用方法
[ 2016-08-03 14:37:18 | 作者: admin ]
geo指令使用ngx_http_geo_module模块提供的。默认情况下,nginx有加载这个模块,除非人为的 --without-http_geo_module。 ngx_http_geo_module模块可以用来创建变量,其值依赖于客户端IP地址。 geo指令 语法: geo [$address] $variable { ... } 默认值: — 配置段: http 定义从指定的变量获取客户端的IP地址。默认情况下,nginx从$remote_addr变量取得客户端IP地址,但也可以从其他变量获得。如
geo $remote_addr $geo {
default 0;
127.0.0.1 1;
}
default 0;
127.0.0.1 1;
}
geo $http_client_ip $geo {
default 0;
127.0.0.1 1;
}
default 0;
127.0.0.1 1;
}
awk分析access.log获得访问前10位的ip地址(nginx日志 或者 apache日志,mysql日志,linux,centos)
[ 2016-08-02 22:55:05 | 作者: admin ]
普通nginx日志,得到ip访问前10位:
普通nginx日志,根据时间段来得到ip访问前10位:
日志格式范例如下:
阅读全文…
awk '{print $1}' access.log |sort|uniq -c|sort -nr|head -10
普通nginx日志,根据时间段来得到ip访问前10位:
sed -n '/15:38:00/,/15:40:00/p' access.log | awk '{print $1}' |sort|uniq -c|sort -nr|head -10
日志格式范例如下:
2013-10-29 10:26:09, INFO, send toEmail=wuas6662@163.com,templateId=23,titleId=11,type=3,sendEmail=noreply+renrenzhichang@mail.xiaozhao.com,ip
...阅读全文…
php使用 memcache 来存储 session
[ 2016-07-25 16:28:40 | 作者: admin ]
Memcache和PHP memcach扩展安装请见http://koda.iteye.com/blog/665761
设置session用memcache来存储
方法I: 在 php.ini 中全局设置
Php.ini代码 收藏代码
方法II: 某个目录下的 .htaccess
Php.ini代码 收藏代码
...
阅读全文…
设置session用memcache来存储
方法I: 在 php.ini 中全局设置
Php.ini代码 收藏代码
session.save_handler = memcache
session.save_path = "tcp://127.0.0.1:11211"
session.save_path = "tcp://127.0.0.1:11211"
方法II: 某个目录下的 .htaccess
Php.ini代码 收藏代码
php_value session.save_handler "memcache"
php_value session.save_path "tcp://127.0.0.1:11211"
php_value session.save_path "tcp://127.0.0.1:11211"
...
阅读全文…
PHP下通过QRCode类库创建中间带网站LOGO的二维码
[ 2016-07-23 14:04:28 | 作者: admin ]
我们要生成二维码都需要借助一些类库来实现了,下面我介绍利用PHP QR Code生成二维码吧,生成方法很简单,下面我来介绍一下.
利用php类库PHP QR Code来实现,不需要装额外的php扩展,首先下载类库包,有时候地址打不开,地址:http://phpqrcode.sourceforge.net/
下载:
国内下载:http://www.jb51.net/codes/189897.html
国外下载:http://sourceforge.net/projects/phpqrcode/
例子,使用PHP QR Code类库创建二维码。
1,浏览器输出:
阅读全文…
利用php类库PHP QR Code来实现,不需要装额外的php扩展,首先下载类库包,有时候地址打不开,地址:http://phpqrcode.sourceforge.net/
下载:
国内下载:http://www.jb51.net/codes/189897.html
国外下载:http://sourceforge.net/projects/phpqrcode/
例子,使用PHP QR Code类库创建二维码。
1,浏览器输出:
<?
include "phpqrcode/phpqrcode.php";
$value="http://www.jb51.net";
$errorCorrectionLevel = "L";
$matrixPointSize = "4";
...include "phpqrcode/phpqrcode.php";
$value="http://www.jb51.net";
$errorCorrectionLevel = "L";
$matrixPointSize = "4";
阅读全文…
汽车手动空调温度控制原理及方法
[ 2016-07-22 16:27:54 | 作者: admin ]
p.s. 夏天,车用手动空调兼顾省油和舒适最理想的办法是将温控旋钮处于最低,尽量以最低风量来运行。 风量小了后,蒸发器热交换效率降低,吸收热量减少,蒸发器越来越冷,降至1.5度,就OFF了,处于間隙工作状态,驾驶室也不会过冷,这样是最省油的;如果觉得驾驶室不够凉快,可把风量开大点,这样热交换效率提高,蒸发器冷得慢,驾驶室可更凉些。
夏天到了,一直对爱车手动空调是怎么实现温度控制、压缩机是一直工作还是像自动空调一样能够自动停止等问题困扰不已,经过查阅大量资料和搜索了解学习,最终明白了其工作基本原理和控制方法,确实受益匪浅,特整理与大家学习分享,希望对大家有所帮助。
汽车空调原理
1.汽车空调的组成
汽车空调一般主要由压缩机、电控离合器、冷凝器、蒸发器、膨胀阀、贮液干燥器、管道、冷凝风扇、真空电磁阀、怠速器和控制系统等组成。
...
阅读全文…
夏天到了,一直对爱车手动空调是怎么实现温度控制、压缩机是一直工作还是像自动空调一样能够自动停止等问题困扰不已,经过查阅大量资料和搜索了解学习,最终明白了其工作基本原理和控制方法,确实受益匪浅,特整理与大家学习分享,希望对大家有所帮助。
汽车空调原理
1.汽车空调的组成
汽车空调一般主要由压缩机、电控离合器、冷凝器、蒸发器、膨胀阀、贮液干燥器、管道、冷凝风扇、真空电磁阀、怠速器和控制系统等组成。
...
阅读全文…
JavaScript报错: malformed URI sequence , URI不合法
[ 2016-07-22 14:27:21 | 作者: admin ]
p.s. 中文传递给ajax,javascript需要解析使用的时候,需要先转成utf-8再urlencode。传递给php则没有这个需要。
在页面使用ajax向后台请求数据,
当返回中文是就需要对中文进行解码,否则会变成乱码:
解码如下:decodeURI(data.Name) ;
以前都运行好好的,但是突然有一天就报了这个错误: malformed URI sequence 被解码的URI不合法.
到网上搜了下,有的说要用: decodeURIComponet, escape 解码才行, 但是这几个方法都试了,还是报同样的错误.
最后检查后台代码发现中文编码的是这样的:
java.net.URLEncoder.encode(client.name); 并提示该方法是过时的了.
于是将其编码改成: java.net.URLEncoder.encode(client.name , "UTF-8"); 便OK了.
...
阅读全文…
在页面使用ajax向后台请求数据,
当返回中文是就需要对中文进行解码,否则会变成乱码:
解码如下:decodeURI(data.Name) ;
以前都运行好好的,但是突然有一天就报了这个错误: malformed URI sequence 被解码的URI不合法.
到网上搜了下,有的说要用: decodeURIComponet, escape 解码才行, 但是这几个方法都试了,还是报同样的错误.
最后检查后台代码发现中文编码的是这样的:
java.net.URLEncoder.encode(client.name); 并提示该方法是过时的了.
于是将其编码改成: java.net.URLEncoder.encode(client.name , "UTF-8"); 便OK了.
...
阅读全文…
linux系统快速查看进程pid的方法
[ 2016-07-21 23:25:23 | 作者: admin ]
一个很简单的命令,pgrep,可以迅速定位包含某个关键字的进程的pid;使用这个命令,再也不用ps aux 以后去对哪个进程的pid了
ps -ef 可以比较方便的得到pid
一个很简单的命令,pgrep,可以迅速定位包含某个关键字的进程的pid;使用这个命令,再也不用ps aux 以后去对哪个进程的pid了
用法:
pgrep -l XXX
说明:
-l参数,可以显示出pid及进程名字;不加-l只显示pid,谁知道是什么进程的pid
举例:
# pgrep httpd
2092
2094
2096
2098
2106
2108
2109
2111
14705
# pgrep -l httpd
2092 httpd
2094 httpd
2096 httpd
2098 httpd
2106 httpd
...
阅读全文…
ps -ef 可以比较方便的得到pid
一个很简单的命令,pgrep,可以迅速定位包含某个关键字的进程的pid;使用这个命令,再也不用ps aux 以后去对哪个进程的pid了
用法:
pgrep -l XXX
说明:
-l参数,可以显示出pid及进程名字;不加-l只显示pid,谁知道是什么进程的pid
举例:
# pgrep httpd
2092
2094
2096
2098
2106
2108
2109
2111
14705
# pgrep -l httpd
2092 httpd
2094 httpd
2096 httpd
2098 httpd
2106 httpd
...
阅读全文…