关于F5 b load报012e0021错误解释
作者:GDNPC 日期:2008-11-21
在大公司的好处就是十几二十万的设备可以随便搞
今天搞的是F5 3600系列
目的是作一个测试找出问题看能否用在新的生产环境上
它虽然和6800系列不是一个档次
但也是身价达6位数的家伙

测试过程中初始化很顺利
但从旧的F5中b load时出现:012e0021:3: The requested attribute () for 'rule' is invalid.报错
报错位置在rule的位置
登陆console把irule添加进去,成功通过语法验证
再次b load,依然报错
开始还以为是9.4.5版本的bug(以前用的是9.3.1)
但我觉得f5出现这种bug未免太naive了
于是逐个逐个rule拷进去b load
发现不是所有rule都报错
最后发现原来是irule书写不规范导致的
出现问题多数出现在
if(...){
HTTP::redirect http://xxx.xxx.xxx }这种配置
只要改成:
if(...){
HTTP::redirect "http://xxx.xxx.xxx" }
或
if(...){
HTTP::redirect http://xxx.xxx.xxx
}
报错就会消失
但在9.3.1这种误差b load的解析器是能辨别的
升级到9.4.5就不行了,估计是把同一行的}都解析成url的一部分
破坏了rule的结构
真不知道是退步了还是更严谨了
上一篇
下一篇

文章来自:
Tags: 

