Citrix ADC

HTTP 配置

重要

从 Citrix ADC 版本 13.0 Build 71.x 开始,Citrix ADC 设备可以处理较大的标头大小 HTTP 请求以适应 L7 应用程序请求。头大小最多可以配置 128 KB。

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

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

注意

当 HTTP 参数的服务、虚拟服务器和全局值不同时,最特定的实体(服务)的值将被赋予最高的优先级。

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

Citrix ADC 支持 WebSocket 协议,该协议允许浏览器和其他客户端创建到服务器的双向、全双工 TCP 连接。Citrix ADC 实现网络套接字符合 RFC 6455 要求。

注意

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

设置全局 HTTP 参数

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

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

默认 HTTP 配置文件

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

注意

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

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

配置默认 HTTP 配置文件

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

    set ns httpProfile nshttp_default_profile …

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

全局 HTTP 命令

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

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

注意

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

配置全局 HTTP 命令

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

    set ns httpParam …

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

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

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

set ns httpParam [-ignoreConnectCodingScheme ( ENABLED | DISABLED )]

示例:

set ns httpParam -ignoreConnectCodingScheme ENABLED

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

配置 HTTP 配置文件以删除 TRACE 或 TRACK 无效请求

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

使用 CLI 配置 HTTP 配置文件

在命令提示窗口中,键入:

set ns httpProfile <profile name> [-markTraceReqInval ENABLED | DISABLED ]

示例:

set ns httpProfile profile1 -markTraceReqInval ENABLED

使用 Citrix ADC GUI 配置文件配置

要标记 TRACE 或 TRACK 无效请求,请完成以下过程。

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

    HTTP 无效跟踪请求

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

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

注意:

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

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

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

  1. 配置 HTTP 配置文件。

    set ns httpProfile <profile-name>...

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

    要将 HTTP 配置文件绑定到服务,请执行以下操作:

set service <name> .....

示例

> set service service1 -httpProfileName profile1

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

set lb vserver <name> .....

示例:

> set 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 请求和响应的波段大小。

> set protocol httpBand reqBandSize 300 respBandSize 2048
Done
> show protocol httpband -type REQUEST

webSocket 连接

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

> set ns httpProfile http_profile1 -webSocket ENABLED
Done
> set lb vserver lbvserver1 -httpProfileName profile1
Done
HTTP 配置