Citrix ADC

HTTP配置

重要:

从Citrix ADC版本13.0版本71。x开始,Citrix ADC设备可以处理较大的标头大小HTTP请求以容纳发明人或者设计人应用程序请求。头部大小最多可配置128 kb。

Citrix ADC设备的HTTP配置可以在名为HTTP配置文件的实体中指定,该实体是HTTP设置的集合。然后,http配置文件可以与想要使用这些http配置的服务或虚拟服务器相关联。

可以将默认HTTP配置文件配置为设置默认情况下全局应用于所有服务和虚拟服务器的HTTP配置。

注意:

当HTTP参数对于服务,虚拟服务器和全局值不同时,最特定实体(服务)的值将获得最高优先级。

Citrix ADC设备还提供了配置HTTP的其他方法。请继续阅读以了解更多信息。

Citrix ADC支持WebSocket协议,该协议允许浏览器和其他客户端创建到服务器的双向,全双工TCP连接。WebSocket的Citrix ADC实施符合RFC6455标准。

注意:

Citrix ADC设备现在支持HTTP / 1.1和HTTP / 2协议的用户源IP(切实)地址配置。

设置全局HTTP参数

Citrix ADC设备允许您为适用于所有Citrix ADC服务和虚拟服务器的HTTP参数指定值。这可以通过以下方式完成:

  • 默认HTTP配置文件
  • 全局HTTP命令

默认HTTP配置文件

名为nshttp_default_profile的HTTP配置文件用于指定在服务或虚拟服务器级别没有提供HTTP配置时使用的HTTP配置文件。

注意:

  • 并非所有HTTP参数都可以通过默认的HTTP配置文件进行配置。某些设置是通过使用全局HTTP命令执行的(请参阅下一节)。

  • 默认配置文件不必明确绑定到服务或虚拟服务器。

配置默认HTTP配置文件

  • 使用命令行界面,在命令提示符处输入:

    set ns httpProfile

  • 在GUI上,导航到系统>配置文件,单击HTTP配置文件并更新nshttp_default_profile。

全局HTTP命令

可以用来配置全局HTTP参数的另一种方法是全局HTTP命令。除了一些唯一的参数之外,此命令还复制了一些可以使用HTTP配置文件设置的参数。对这些重复参数所做的任何更新都会反映在默认HTTP配置文件中的相应参数中。

例如,如果使用此方法更新maxReusePool参数,则该值将反映在默认HTTP配置文件(nshttp_default_profile)的maxReusePool参数中。

注意:

Citrix建议您仅对默认HTTP配置文件中不可用的HTTP参数使用此方法。

配置全局HTTP命令

  • 使用命令行界面,在命令提示符处输入:

    设置httpParam…

  • 在GUI上,导航到系统 > 设置,单击更改HTTP参数并更新所需的HTTP参数。

为连接请求配置忽略编码方案

要启用http /2并设置http /2参数以忽略连接请求中的编码方案,请在命令提示符处键入:

设置ns httpParam [-ignoreConnectCodingScheme (ENABLED | DISABLED)]

示例:

设置ns httpParam -ignoreConnectCodingScheme ENABLED

使用Citrix ADC命令行将HTTP配置文件绑定到虚拟服务器

配置HTTP配置文件以删除跟踪或跟踪无效请求

您可以启用MarkTraceRqInVal参数将TRACK和TRACK请求标记为无效。如果在虚拟IP地址上启用此选项以及DropInvalidReqs选项,则可以重置向Citrix ADC设备发送跟踪或跟踪请求的客户端。

使用cli配置HTTP配置文件

在命令提示符下,键入:

设置ns httpProfile <配置文件名称> [-markTraceReqInval ENABLED | DISABLED]

示例:

设置ns httpProfile profile1 -markTraceReqInval ENABLED

为服务组配置HTTP配置文件

在命令提示符下,键入:

添加serviceGroup < serviceGroupName > @ < serviceType > [-cacheType < cacheType >] [td < positive_integer >] [maxclient < positive_integer >] [-maxReq < positive_integer >][缓存(是的|不)][cip(启用|禁用)[< cipHeader >]][切实(是的|不)][-pathMonitor(是的|不)][-pathMonitorIndv(是的|不)][-useproxyport(是的|不)][-healthMonitor(是的|不)][- sp (|)] [-rtspSessionidRemap (|)] [-cltTimeout <秒>][-svrTimeout <秒>][-CKA(是的|不)][-TCPB(是的|NO )] [-CMP ( YES | NO )] [-maxBandwidth ] [-monThreshold ] [-state ENABLED DISABLED )][-downStateFlush ( ENABLED | DISABLED )] [-tcpProfileName ] [-httpProfileName ] [-comment ] [-appflowLog ( ENABLED | DISABLED )] [-netProfile ] [-autoScale  -memberPort  [-autoDisablegraceful ( YES | NO )] [-autoDisabledelay ] ] [-monConnectionClose ( RESET | FIN )] 

示例:

add serviceGroup rl-lip -30016 HTTP -maxClient 0 -maxReq 0 -cip ENABLED X-Forwarded-For -usip NO -useproxyport YES -cltTimeout 180 -svrTimeout 360 -CKA NO -TCPB NO -CMP NO -tcpProfileName live-tcp-profile-sg -httpProfileName profile1 .使用实例

使用Citrix ADC GUI配置HTTP配置文件

要将跟踪或跟踪请求标记为无效,请完成以下过程。

  1. 登录Citrix ADC设备,然后导航到配置 >系统> 配置文件
  2. HTTP配置文件选项卡页中,单击添加
  3. 创建HTTP配置文件页面中,选择将跟踪请求标记为无效选项。
  4. 单击创建

    HTTP无效的跟踪请求

设置服务或虚拟服务器特定的HTTP参数

使用HTTP配置文件,可以为服务和虚拟服务器指定HTTP参数。您必须定义HTTP配置文件(或使用内置的HTTP配置文件)并将该配置文件与适当的服务和虚拟服务器关联。

注意:

您还可以根据自己的要求修改默认配置文件的HTTP参数。

使用命令行界面指定服务或虚拟服务器级别的HTTP配置

在命令提示符处,执行以下操作:

  1. 配置HTTP配置文件。

    set ns httpProfile

  2. 将HTTP配置文件绑定到服务或虚拟服务器。

    要将HTTP配置文件绑定到服务:

设置service .....

例如

set service service1 -httpProfileName profile1 

要将HTTP配置文件绑定到虚拟服务器:

设置lb vserver .....

示例:

>设置lbvserver1 -httpProfileName profile1 

使用GUI指定服务或虚拟服务器级别的HTTP配置

在GUI上,执行以下操作:

  1. 配置HTTP配置文件。

    导航到系统>配置文件>HTTP配置文件,然后创建HTTP配置文件。

  2. 将HTTP配置文件绑定到服务或虚拟服务器。

    导航到流量管理>负载平衡>服务/虚拟服务器,然后创建HTTP配置文件,该配置文件必须绑定到服务/虚拟服务器。

内置HTTP配置文件

为了方便配置,Citrix ADC提供了一些内置的HTTP配置文件。查看列出的配置文件并按原样使用,或者对其进行修改以满足您的要求。您可以将这些配置文件绑定到所需的服务或虚拟服务器。

内置配置文件 说明
nshttp_default_profile 表示设备上的默认全局HTTP设置。
nshttp_default_strict_validation 要求对HTTP请求和响应进行严格验证的部署的设置。

HTTP配置示例

用于配置以下内容的示例命令行界面示例:

  • HTTP波段统计
  • WebSocket连接

HTTP波段统计

指定HTTP请求和响应的波段大小。

> show protocol httpBand -type REQUEST 

WebSocket连接

在所需的HTTP配置文件上启用WebSocket。

> set ns httpProfile http_profile1 -webSocket ENABLED Done > set lbvserver lbvserver1 -httpProfileName profile1 Done