月度归档:2008 年四月

Smarty regex_replace之乱改

用到Smarty的regex_replace,正则里的分组符号$1,$2在编译的时候会被完全抹掉,找不到原因

一不做二不休,把$1,$2写成A1,A2,修改了modifier.regex_replace.php

$replace = str_replace(‘A’,’$’,$replace);

然后就可以成功的分组替换了

update:

今天找到原因了,是在模板里的正则需要用反斜杠转义,因为 $ 会被smarty解析,所以 $1,$2在经过smarty解析后,传回去的时候就啥也没了

正确的方法是 \$1 \$2

2008-09-24

防盗链

一心钻在Apache的配置里去做防盗链,却忘了已经存在的Squid

所以配置好了Apache,再通过Squid访问,就发现一切都乱套了

其实以Squid的强大acl控制,根本就没有Apache什么事……

acl legalreferer referer_regex ^http://[a-z].*\.xxx\.com

acl picurl url_regex -i \.bmp$ \.png$ \.jpg$ \.gif$ \.jpeg$

http_access deny !legalreferer picurl

现在唯一还没有能解决的就是怎么显示定制的图片错误信息。