作者:sealinger
发布时间:April 29, 2011
分类:混口饭吃
一、概念
====================
-允许的最大跟踪连接条目:CONNTRACK_MAX(默认值是 2^16=65536 )
-存储跟踪连接条目列表的哈西表的大小:HASHSIZE
-每个哈西表的条目(叫一个bucket),包含了一个链接起来的跟踪连接条目
-哈希表大小HASHSIZE,表现为 条目bucket的多少,在iptables启动时在日志中会显示。
图表形象解释:

例如,系统默认配置下,启动 iptables 时的信息如下:
ip_conntrack version 2.4 (8192 buckets, 65536 max) - 304 bytes per conntrack
二、实战:调大 conntrack_max 参数(2.6内核)
========================================
1)增大 ip_conntrack_max(设置为 2^20,默认值是 2^16=65536)
# vi /etc/sysctl.conf
net.ipv4.ip_conntrack_max = 1048576
2)增大 hashsize (在i386架构上,HASHSIZE = CONNTRACK_MAX / 8)
# vi /etc/modprobe.conf
options ip_conntrack hashsize=131072
然后重启 iptables 服务,在 messages中可以看到参数已生效:
# service iptables restart
# tail /var/log/messages
Feb 27 04:02:02 dispatcher syslogd 1.4.1: restart.
Feb 27 17:45:01 dispatcher auditd[3924]: Audit daemon rotating log files
Mar 1 11:47:13 dispatcher kernel: Removing netfilter NETLINK layer.
Mar 1 11:47:13 dispatcher kernel: ip_tables: (C) 2000-2006 Netfilter Core Team
Mar 1 11:47:13 dispatcher kernel: Netfilter messages via NETLINK v0.30.
Mar 1 11:47:13 dispatcher kernel: ip_conntrack version 2.4 (131072 buckets, 1048576 max) - 228 bytes per conntrack
注:只修改 net.ipv4.ip_conntrack_max = 1048576 ,重启iptables服务,messages信息中 (8192 buckets, 65536 max) 不变。
阅读剩余部分...
作者:sealinger
发布时间:April 28, 2011
分类:混口饭吃
原文地址:绍兴数码商城的空间
2011-04-07 23:24
nginx的rewrite有个很奇特的特性 — rewrite后的url会再次进行rewrite检查,最多重试10次,10次后还没有终止的话就会返回HTTP 500。
用过nginx的朋友都知道location区块,location区块有点像Apache中的RewriteBase,但对于nginx来说location是控制的级别而已,里面的内容不仅仅是rewrite.
这里必须稍微先讲一点location的知识.location是nginx用来处理对同一个server不同的请求地址使用独立的配置的方式。
举例:
location = / {
....配置A
}
location / {
....配置B
}
location ^~ /images/ {
....配置C
}
location ~* \.(gif|jpg|jpeg)$ {
....配置D
}
访问 / 会使用配置A
访问 /documents/document.html 会使用配置B
访问 /images/1.gif 会使用配置C
访问 /documents/1.jpg 会使用配置D
如何判断命中哪个location暂且按下不婊, 我们在实战篇再回头来看这个问题.
现在我们只需要明白一个情况: nginx可以有多个location并使用不同的配.
sever区块中如果有包含rewrite规则,则会最先执行,而且只会执行一次, 然后再判断命中哪个location的配置,再去执行该location中的rewrite, 当该location中的rewrite执行完毕时,rewrite并不会停止,而是根据rewrite过的URL再次判断location并执行其中的配置. 那么,这里就存在一个问题,如果rewrite写的不正确的话,是会在location区块间造成无限循环的.所以nginx才会加一个最多重试10次的上限. 比如这个例子
location /download/ {
rewrite ^(/download/.*)/media/(.*)\..*$ $1/mp3/$2.mp3 last;
}
如果请求为 /download/eva/media/op1.mp3 则请求被rewrite到 /download/eva/mp3/op1.mp3。
结果rewrite的结果重新命中了location /download/ 虽然这次并没有命中rewrite规则的正则表达式,但因为缺少终止rewrite的标志,其仍会不停重试download中rewrite规则直到达到10次上限返回HTTP 500。
认真的朋友这时就会问了,上面的rewrite规则不是有标志位last么? last不是终止rewrite的意思么?
说到这里我就要抱怨下了,网上能找到关于nginx rewrite的文章中80%对last标志的解释都是
last – 基本上都用这个Flag
……这他妈坑爹呢!!! 什么叫基本上都用? 什么是不基本的情况? =皿=
阅读剩余部分...
作者:sealinger
发布时间:April 24, 2011
分类:默认分类
花了两天时间,把Blog系统从WordPress换到Typecho了,挺折腾人的:
1)先安装Typecho-0.8,安装WordPress-to-Typecho插件;
2)再安装WordPress-2.7;
3)从WordPress-3.0导出文章,再从WordPress-2.7导入;
4)再从Typecho中用wordpress-to-typecho插件导入WordPress-2.7的数据库;
5)更新数据库,做些附件路径的修改等;
6)研究Nginx Rewrite,做伪静态化;
7)手工修改下文章的分类。
总算完工,又重新开始。。。
作者:sealinger
发布时间:April 18, 2011
分类:简单生活
今天下午考桩,等待时间太长(三个小时),导致人容易紧张,直到考完那一刻都没感觉到放松。。。
不过我们都是实力派,毕竟练得很熟了,全部通过。
我中途居然熄火了,是真的紧张啊。。。有木有!!
总之又搞定一门,V!
作者:sealinger
发布时间:April 2, 2011
分类:简单生活
http://www.agoda.com/ (全球主页)
http://www.agoda.com.cn/ (中文主页)
专业驴友同事介绍的,是全球最大的订房网站,他去泰国就是在这里订的。感觉比国内那些旅游网站好多了,前两天刚订了香港的酒店,各种价位都有(貌似该网站和酒店有合作优惠的,跟酒店当天价格不同),且有不少驴友写的酒店点评,供选择参考。
真诚介绍给旅游新手使用(绝非广告,是就好了。。。)。
