配置响应程序操作
启用响应程序功能后,必须配置一个或多个用于处理请求的操作。响应程序支持以下类型的操作:
用回应。发送目标表达式定义的响应,而不将请求转发到网页服务器。(Citrix ADC设备替代Web服务器并充当Web服务器)使用这种类型的操作可以手动定义基于HTML的简单响应。通常情况下,“响应方式”操作的文本由网页服务器错误代码和简短的HTML页面组成。
用SQL做出响应确定。发送由目标表达式定义的指定SQL OK响应。使用此类操作可以向SQL查询发送SQL ok响应。
使用SQL错误进行响应。发送由目标表达式定义的指定SQL错误响应。使用此类操作可向SQL查询发送SQL错误响应。
使用HTML页面进行响应。发送指定的HTML页面作为响应。您可以从以前上传的HTML页面的下拉列表中进行选择,也可以上传新的HTML页面。使用此类操作可以发送导入的HTML页面作为响应。设备在responsewithhtmlpage响应程序操作中使用自定义标头进行响应。您最多可以配置八个自定义标头。
重定向。将请求重定向到其他网页或Web服务器。重定向操作可以将最初发送到 DNS 中存在但没有实际 Web 服务器的 “虚拟” 网站的请求重定向到实际的网站。它还可以将搜索请求重定向到适当的 URL。通常,重定向操作的重定向目标包含完整的 URL。
要使用Citrix ADC命令行配置响应程序操作,请执行以下操作:
显示指定响应程序操作的当前设置。如果未提供任何操作名称,则显示Citrix ADC设备上当前配置的所有响应程序操作的列表,其中包含缩写设置。
在命令提示符下,键入以下命令以配置响应程序操作并验证配置:
添加响应器动作<名称> <类型> <目标>
显示响应器动作
参数:
名称。响应程序操作的名称。 最大长度:127
类型。响应程序操作的类型。它可以是:(响应方式)。
目标。用于指定响应内容的表达式
htmlpage。指定使用htmlpage进行响应的选项
命中。执行操作的次数。
参考计数。对操作的引用次数。
UndefHits。该行动导致民主基金的次数。
评论。有关此响应程序操作的任何类型的信息。
内置的。用于确定是否内置响应程序操作的标志
示例:
创建一个响应器动作,为不存在的url显示“Not Found”错误页面:> add responder action act404Error respondWith '"HTTP/1.1 404 Not Found\r\n\r\n"+ HTTP. req . url。HTTP_URL_SAFE + "在web服务器上不存在"名称:act404Error操作:respondwith目标:“HTTP/1.1 404 Not Found”+ HTTP. req . url。HTTP_URL_SAFE + "在web服务器上不存在。"添加响应器动作act404Error respondWith '"HTTP/1.1 404 Not Found\r\n\r\n"+ HTTP. req . url。HTTP_URL_SAFE + "在web服务器上不存在"名称:act404Error操作:respondwith目标:“HTTP/1.1 404 Not Found”+ HTTP. req . url。HTTP_URL_SAFE + "在web服务器上不存在。"Hits: 0 Undef Hits: 0 Action Reference Count: 0 Done
要使用Citrix ADC命令行修改现有响应程序操作,请执行以下操作:
在命令提示符下,键入以下命令以修改现有的响应程序操作并验证配置:
设置响应器动作
-target 显示响应器动作
示例:
设置响应器动作act404Error -target '"HTTP/1.1 404 Not Found\r\n\r\n"+ HTTP. req . url。HTTP_URL_SAFE + "在web服务器上不存在"名称:act404Error操作:respondwith目标:“HTTP/1.1 404 Not Found”+ HTTP. req . url。HTTP_URL_SAFE + "在web服务器上不存在。"Hits: 0 Undef Hits: 0 Action Reference Count: 0 Done
要使用Citrix ADC命令行删除响应程序操作,请执行以下操作:
在命令提示符下,键入以下命令以删除响应程序操作并验证配置:
Rm响应器动作
显示响应器动作
示例:
rm响应器动作act404Error Done >显示响应器动作Done
要使用Citrix ADC命令行在responsewithhtmlpage响应程序操作中添加自定义标头,请执行以下操作:
Citrix ADC设备现在可以在响应withhtmlpage响应程序操作中使用自定义标头进行响应。您最多可以配置八个自定义标头。以前,设备仅使用内容类型:text / html
和内容长度:<值>
静态标头进行响应。
注意:
在自定义标题配置中,您还可以覆盖" Content-Type "标头值。
在命令提示符下,键入以下命令:
add responder action
其中,
名。响应程序操作的名称。必须以字母、数字或下划线字符 (_) 开头,并且必须仅包含字母、数字和连字符 (-)、句点 (.) 哈希 (#)、空格 ()、at (@)、等于 (=)、冒号 (:) 和下划线字符。添加响应程序策略后可以更改。
类型。响应程序操作的类型。可用设置功能如下:
- 响应
<目标>
/响应-使用指定为目标的表达式响应请求。 - 响应withhtmlpage-使用上传的HTML页面对象指定为目标来响应请求。
- redirect-将请求重定向到指定为目标的URL。
- sqlresponse_ok-发送一个SQL确定响应。
- sqlresponse_error-发送一个SQL错误响应。这是一个强制性的论点。可能的值:无操作,响应方式,重定向,使用htmlpage进行响应,sqlresponse_ok sqlresponse_error
目标。指定响应内容的表达式。通常是重定向策略的url或默认语法表达式。除了引用请求中信息的Citrix ADC默认语法表达式之外,字符串构建器表达式还可以包含文本和HTML以及用于定义新行和段落的简单转义代码。用双引号将每个字符串构建器表达式元素(Citrix ADC默认语法表达式或字符串)括起来。使用加号 (+) 字符连接元素。
htmlpage。对于response withhtmlpage 策略,用作响应的 HTML 页面对象的名称。您必须首先导入页面对象。最大长度:31
评论。有关此响应程序操作的任何类型的信息。最大长度:255
响应状态码。HTTP响应状态码,例如200,302,404等。重定向操作类型的 默认值为 302,响应与 htmlpage 的默认值为 200 最小值:100 最大值:599
原因短语。用于指定HTTP响应的原因短语的表达式。原因短语可以是带引号或PI表达式的字符串文字。例如:"无效的网址:" + http.req.url最大长度:8191
标题。要插入到HTTP响应中的一个或多个标头。每个标头都指定为“名字(expr)”,其中expr是在运行时进行计算以提供命名标头值的表达式。您最多可以为响应程序操作配置八个标头。
要使用GUI配置响应程序操作,请执行以下操作:
- 导航到AppExpert >响应程序>操作。
- 在详细信息窗格中,执行以下操作之一:
- 要创建操作,请单击添加。
- 要修改现有操作,请选择该操作,然后单击”打开”。
- 单击”创建“或”确定”,具体取决于您是创建操作还是修改现有操作。
- 单击关闭。状态栏中将显示一条消息,指出该功能已启用。
- 要删除响应程序操作,请选择该操作,然后单击”删除”。状态栏中将显示一条消息,指出该功能已被禁用。
使用“添加表达式”对话框添加表达式
在创建响应程序操作或配置响应程序操作对话框中,单击添加。
- 在“添加表达式对话框中,在第一个列表框中为表达式选择第一个术语。
- HTTP。HTTP协议。如果要检查与HTTP协议有关的请求的某些方面,请选择此选项。
- 系统。一个或多个受保护的网站。如果要检查请求中与请求收件人有关的某些方面,请选择此选项。
- 客户端。发送请求的计算机。如果要检查请求发件人的某些方面,请选择此选项。
- 分析。与请求关联的分析数据。如果要检查请求元数据,请选择此选项。
- 啜。一个sip请求。如果要检查sip请求的某些方面,请选择此选项。当你做出选择时,最右边的列表框会列出表达式下一部分的适当术语。
- 在第二个列表框中,为表达式选择第二个术语。这些选择取决于您在上一步中所做的选择,并且适合上下文。进行第二次选择后,“构造表达式”窗口下方的“帮助“窗口(该窗口为空)将显示描述刚刚选择的术语的用途和用法的帮助。
- 继续从上一列表框右侧显示的列表框中选择术语,或者在出现提示您输入值的文本框中键入字符串或数字,直到表达式完成。
配置全局HTTP操作
您可以将全局HTTP操作配置为在HTTP请求超时时调用响应程序操作。要配置此功能,必须首先创建要调用的响应程序操作。然后,将全局HTTP超时操作配置为使用该响应程序操作响应超时。
要使用Citrix ADC命令行配置全局HTTP操作,请执行以下操作:
在命令提示符下,键入以下命令:
设置ns httpProfile -reqTimeoutAction <响应器动作名称>
保存ns config
对于<响应器动作名称>
,用响应程序操作的名称替换。
配置HTML页面导入
当Citrix ADC设备使用自定义消息进行响应时,我们可以使用HTML文件进行响应。您可以使用导入响应器htmlpage
命令导入文件,然后在命添加响应器action
令中使用此文件。您还可以通过Citrix ADC GUI导入文件。您可以将所需的HTML页面导入到设备文件夹中,然后在响应程序运行期间上传该页面。
使用cli导入HTML页面
在命令提示符下,键入:
import responder htmlpage [
示例:
import responder htmlpage http://www.example.com/page.html my-responder-page -CAcertFile my_root_ca_cert
其中,ca证书用于验证客户端证书。应使用“导入ssl certfile“CLI命令或等效命令通过API或GUI导入证书。如果未配置证书名称,则使用默认的根ca证书进行证书验证。
使用Citrix ADC图形用户界面导入HTML页面
- 导航到AppExpert>响应程序>HTML页面导入。
- 在响应程序HTML导入详细信息窗格中,单击添加。
在HTML页面导入对象页面中,设置以下参数:
- 名称。HTML页面的名称。
- 从导入。从文件、文本或文本导入。
- URL。选择以输入HTML文件的url位置。
- 文件。从设备目录中选择HTML文件。
- 文本。选择HTML文件作为文本。
- 单击继续。
- 验证响应者HTML页面详细信息。
单击完成。
要编辑HTML页面,可以选择一个文件,然后从”选择操作“下拉列表中单击”编辑响应程序HTML页面文件”。