利用Nginx的Limit模块防御CC攻击

Published: Tags: NGINX LINUX

在nginx.conf配置中的http字段里,添加如下一行:

limit_req_zone $binary_remote_addr zone=bottleneck:10m rate=3r/s; #平均每秒3个请求

然后在server配置的主机定义中,添加如下一行:(也可以加在location之下)

limit_req zone=bottleneck burst=6 nodelay; #突发 …
… Read More …

CSS压缩合并算法

Published: Tags: HTML
purifier = function( file_content ) {
	fc = file_content; 
	fc = replace(fc,'\r',''); //删除回车符
	fc = replace(fc,'[\n\t]',' '); //替换为空格(不删除是怕出错)
	fc = replace(fc,"/\*.*?\*/"," "); // …
… Read More …

使用Shell编写简单的计算器

Published: Tags:
function j2calc () 
{ 
	local Result;
	if [ $# -lt 1 ]; then
		echo "没有输入正确表达式";
	elif (( $* )); then
		let Result="$*";
		echo "$* = $Result";
	else
		echo "结果为0或非法 …
… Read More …

Python计算CRC含有负数

Published: Tags:

PS:据说这个问题在Python 3.x以上的版本并不存在~

在Python中计算CRC有两个库,一个是binascii,另外一个是zlib,两者计算出来的CRC值域为 [-2^31, 2^31-1] 的有符号整数。 而通常我们所使用的是无符号整数类型,所以需要对计算得到的CRC值和0xffffffff这个数值进行操作来修正这个问题。

import zlib #换用binascii …
… Read More …

旧事新坑502_Bad_Gateway

Published: Tags: PHP NGINX

配置过Nginx和PHP的同学,想必都遇到过502的错误。我就简单说一下,出现这个错误的原因有哪些: * Linux内核打开文件数量限制,我是没遇过 * PHP的fastcgi没启动,简单,启动下就好了 * PHP的fastcgi进程数量太少,也简单,加大进程数就可以 * PHP的fastcgi执行时间限制太短,我去,增加下执行时间呗 * PHP的fastcgi执行内存限制太小,还能不能好好耍了, …

… Read More …

使用Chrome或Fiddler抓取WebSocket包

Published: Tags: WEB SNIFFER

现在做网页游戏开发的同学,肯定会使用到WebSocket来通讯,毕竟相对于长轮询和iFrame等方式,WebSocket给我们开了一扇大门,更简单快捷。

首先,HTTP是建立在TCP协议基础上的,而WebSocket通常也是建立在TCP上,所以说为什么有些网页游戏抓不到包而有些又可以,这仅是因为你使用的抓包工具是针对了HTTP的通信协议。

我先从抽象的层面,举一个可能不太恰当的例子,只为了让不 …

… Read More …