请注意这个只是常用规则的总结,而不是手册。 1、匹配所有以.js结尾的URL HTTP.REQ.URL.ENDSWITH(".js") 如:http://blog.izhoufeng.com/blog.js 2、匹配所有以izhoufeng.com结尾的域 HTTP.REQ.HOSTNAME.ENDSWITH("izhoufeng.com") 3、精确匹配HOSTNAME HTTP.REQ.HOSTNAME.EQ("blog.izhoufeng.com") 4、匹配所有URL里边以/zhoufeng/开头的URL HTTP.REQ.URL.STARTSWITH("/zhoufeng/") 等于:http://blog.izhoufeng.com/zhoufeng/(.*)$ 5、对referer来源匹配url HTTP.REQ.HEADER("Referer").EQ("http://blog.izhoufeng.com/") 6、精确匹配url HTTP.REQ.URL.EQ("/") 等于:http://blog.izhoufeng.com/$ 7、URL包含匹配 HTTP.REQ.URL.CONTAINS("_") 8、HOSTNAME包含匹配 HTTP.REQ.HOSTNAME.CONTAINS("izhoufeng.com") 9、匹配subnet CLIENT.IP.SRC.IN_SUBNET(124.115.0.0/24) 10、匹配ip地址 CLIENT.IP.SRC.EQ(220.181.6.204) 11、灵活匹配 HTTP.REQ.URL.REGEX_MATCH(re#^/blog\d{2}/\d{4}\.htm$#)
Archive for 五月, 2010
写程序有助懂系统底层,运维系统需要懂程序来深入了解系统。浅显点说,其实系统部门对网站架构起着很重要的作用。很多系统方面的事情如果结合点程序来实现,那结果可能两样,一来架构简单,二来运维方便。所以大家还是要培养下这种素养。所以我看到好的方法,都忍不住要记录下来。 以下记录的就是PHP模拟POST提交的2种方法 1.通过curl函数 < ?php $post_data = array(); $post_data[’clientname’] = "test08"; $post_data[’clientpasswd’] = "test08"; $post_data[’submit’] = "submit"; $url=’http://xx.xx.com/index.php’; $o=""; foreach ($post_data as $k=>$v) { $o.= "$k=".urlencode($v)."&"; } $post_data=substr($o,0,-1);//clientname=test08&clientpasswd=test08&submit=submit $ch = curl_init(); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_URL,$url); //为了支持cookie curl_setopt($ch, CURLOPT_COOKIEJAR, ‘cookie.txt’); curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); $result = curl_exec($ch); echo $result;