A10的aFleX脚本语言是基于Tcl脚本语言的,下面是一些常见的错误。


aFleX syntax error message “wrong # args: no script following”

注: aFleX 语法错误在Web界面下保存aFlex时显示或者命令行下检查(aflex check script-name)时显示.

这类错误通常在“if”所在行。Tcl脚本语言中,前花括号(“{”)必须与之前的后花括号(“}”)在同一行,而且之间必须有一个空格(“} {”)。

正确:

if { [HTTP::uri] starts_with “/private”)} {  
xyz    
}    
错误(前花括号与上一个后花括号不在同一行):

if { [HTTP::uri] starts_with “/private”)}  
{    
xyz    
}

错误: ( 花括号间无空格)

if { [HTTP::uri] starts_with “/private”)}{  
xyz    
}


aFleX execution abort errors – wrong variable name

注: aFleX execution abort error 统计可通过WEB界面(Monitor > Service > aFleX)和命令行(show aflex script-name)查看。

这类错误可能由于变量名中包含“ – ”。 aFleX 变量可以包含数字、字母和下划线( _ )。

正确:   set ip_addr “10.0.0.10″  
错误:   set ip-addr “10.0.0.10″


aFleX execution abort errors – HTTP header not present

这类错误可能由于aFleX脚本试图读取在请求或响应头中不存在的HTTP变量。例如,HTTP响应头中不一定总是有 “Location”,这个头通常只出现在服务器重定向应答 (响应代码 301 或 302)。

正确(判断存在该字段后才读取):

if { [HTTP::header exists "Location"]} {  
if {[HTTP::header Location] contains “intranet.example.com”} {    
xyz    
}

错误(不做判断总是读取):

if { [HTTP::header Location] contains “intranet.example.com”} {  
xyz    
}


aFleX HTTP content rewrite not done

这并非aFleX错误,而是HTTP响应中的内容未成功修改。这个错误在服务器返回压缩内容时发生。为了避免服务器返回压缩内容,除了在服务器关闭压缩外,也可以通过删除HTTP请求头中“Accept-Encoding”字段让服务器认为客户端不支持压缩。

注: 如果为了节约带宽和改善用户响应时间,可以启用负载均衡的压缩功能在负载均衡和客户端之间进行压缩。

解决方案(删除请求头中“Accept-Encoding”字段避免服务器响应压缩):

when HTTP_REQUEST {  
HTTP::header remove Accept-Encoding    
}    
when HTTP_RESPONSE {    
HTTP::collect    
}    
when HTTP_RESPONSE_DATA {    
xyz    
HTTP::release    
}

(R.S.)

转载于:https://blog.51cto.com/virtualadc/1231499

aFleX脚本常见错误相关推荐

  1. shell脚本常见错误及解决方法

    一. shell脚本执行错误 $'\r':command not found 场景: Windows下编写的linux .sh脚本在linux服务器上执行出现此错误 原因: 脚本在执行中无法识别\r ...

  2. shell脚本常见错误

    一.引言 想要学习使用shell脚本,却在开始的时候遇到很多不顺利,都是一些小细节的东西,所以在此记录一下. 二.各种细节问题 1.变量作为赋值对象时不需要添加$,取值时需要,也就是说,这个$就是取值 ...

  3. 按键精灵调试三天,气到吐血!!快速开发脚本代码常见错误!绝对干货!

    来源:按键学院   [按键精灵] 还记不记得,那些天,急着交脚本的时候出bug了.通宵了三天三夜,调试出错.逻辑检查了一边又一边,万行代码反反复复翻来覆去推敲了无数遍.结果-- 不要告诉我是中英文符号 ...

  4. linux更新驱动脚本,编写Linux驱动常见错误(不断更新)!

    工作中遇到的编写Linux驱动的常见错误和注意事项整理,将不断更新. 问题1.驱动的init函数声明错误 出错: [root@localhost]# insmod phyinfo.ko insmod: ...

  5. ASP.NET常见错误,原因及解决方法(2003版)_不断更新.....

    [标题]             ASP.NET常见错误,原因及解决方法[错误提示]    异常详细信息: System.Net.WebException: 请求因 HTTP 状态 401 失败:Un ...

  6. hadoop-HA集群搭建,启动DataNode,检测启动状态,执行HDFS命令,启动YARN,HDFS权限配置,C++客户端编程,常见错误

    本篇博文为整理网络上Hadoop-HA搭建后出来的博客,参考网址为:http://blog.chinaunix.net/uid-196700-id-5751309.html 3. 部署 3.1. 机器 ...

  7. Hadoop-2.8.0集群搭建、hadoop源码编译和安装、host配置、ssh免密登录、hadoop配置文件中的参数配置参数总结、hadoop集群测试,安装过程中的常见错误

    25. 集群搭建 25.1 HADOOP集群搭建 25.1.1集群简介 HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起 HDFS集群: 负责海量数据 ...

  8. MINIGUI常见错误集及解决方法

    MINIGUI常见错误集及解决方法 个人前言:其中错误1到16是直接转载的一篇博客,在移植MiniGUI过程中碰到的问题远远不止这些,我只是拿这16个先开个头,以后会将我自己在移植MiniGUI的过程 ...

  9. centos linux 系统日常管理4 scp,rsync,md5sum,sha1sum,strace ,find Rsync 常见错误及解决方法 第十七节课...

    centos linux 系统日常管理4  scp,rsync,md5sum,sha1sum,strace ,find Rsync 常见错误及解决方法  第十七节课 rsync可以增量同步,scp不行 ...

最新文章

  1. matlab 显示多为,求助!!如何把多输入多输出系统的传函转换为状态空间表达式?...
  2. 深圳市中心迎来首批RoboTaxi,元戎启行正式开放运营
  3. 敏捷开发本质 与 敏捷个人本质
  4. leetcode算法题--删除链表的倒数第N个节点
  5. C语言实训指导数组,c语言实训指导书
  6. Java 8 Friday:可选将保留为Java中的一个选项
  7. centos7.3 docker安装grafana
  8. 在线便携小电视源码 云电视源码
  9. 安装slide后Powerpoint 不自动退出的解决方案
  10. 预训练模型的技术演进:乘风破浪的PTM
  11. Datawhale数据挖掘项目之task1
  12. paip.提升效率--输入框不能粘贴的问题
  13. DXP导出PCB为PDF格式的设置
  14. python stm32f401_使用Python编程STM32F401 Nucleo开发板快速入门
  15. 计算机用户 图片存储位置,电脑版微信图片存在哪里?存储地址是什么?
  16. html 广告弹窗代码,广告弹窗.html
  17. 生鲜电商、社区团购、团长中心、地址管理、自提点、订单列表、限时折扣、预售、会员储值、钱包、同城配送、门店自提、团长自提、采购、履约、仓储、运输、财务、移动端电商原型、rp源文件、axure电商原型
  18. 用计算机计算告白密码,阿拉伯数字高级表白密码 很火的表白密码
  19. CentOS如何修改时区
  20. webRTC(二十四):web远程多台android的实现

热门文章

  1. 『并发包入坑指北』之阻塞队列
  2. PyTorch Tricks 集锦
  3. Datawhale入选DataFountain优秀组织
  4. 数百个CV实战项目与必备7本书5000页中英文CV书籍免费送啦~
  5. 借助可视化,最直观理解梯度,以及偏导数、方向导数和法向量等
  6. 损失函数的可视化:浅论模型的参数空间与正则
  7. 不可错过的2019秋招CV岗心得!原来拿offer也是有套路的
  8. 爬虫之常用数据解析方法
  9. 大作文十大必背范文:五星级真题
  10. 数学推导+纯Python实现机器学习算法26:PCA降维