Citrix ADC

如何使用响应程序将 超文本传输协议请求重定向到 HTTPS

本文介绍如何使用负载平衡虚拟服务器 知识产权地址配置响应程序功能,并将客户端请求从 超文本传输协议重定向到 HTTPS

考虑一种情况,其中用户可能会尝试通过发送 超文本传输协议请求访问安全网站。您可能希望将请求重定向到安全网站,而不是删除请求。您可以使用响应程序功能将请求重定向到安全网站,而无需更改用户尝试访问的路径和 统一资源定位地址查询。

Citrix ADC响应程序如何将请求从 超文本传输协议重定向到 HTTPS

下图显示了设备如何重定向请求的逐步流程。

响应程序重定向请求

注意:导航路径和屏幕快照来自 NetScaler 11.0

要配置响应程序功能以及 NetScaler设备的负载平衡 贵宾地址以将客户端请求从 超文本传输协议重定向到 HTTPS请完成以下过程。

  1. 在设备上启用响应程序功能。导航到系统>设置>配置高级功能>响应程序

    启用响应程序

  2. 创建响应程序操作并在“名称”字段中指定适当的名称,如 http\u to\u https\u actn
  3. 要创建响应程序操作,请在导航窗格中展开专家>响应程序,单击操作,然后单击添加
  4. 选择重定向为类型。
  5. 在“表达式”字段中,键入以下表达式:

    “https://”+HTTP.REQ.HOSTNAME.HTTP\u URL\u SAFE+HTTP.REQ.URL.PATH\u和\u QUERY.HTTP\u URL\u SAFE

  6. 在 NetScaler版本 9和 10中,确保清除旁路安全检查选项。

    注意:从 NetScaler 11.0开始,此选项不存在。

  7. 创建响应程序策略并在“名称”字段中指定适当的名称,如 http_to_https_pol
  8. 要创建响应程序策略,请在导航窗格中展开专家>响应程序,单击策略,然后单击添加
  9. 从“操作”列表中,选择您创建的操作名称。
  10. 从“未定义的操作”列表中,选择“重置”
  11. 表达式字段中键入HTTP.REQ.IS_值表达式,如下面的屏幕截图所示。

创建响应程序策略

  1. 创建状态始终标记为 向上的的监视器,并在“名称”字段中指定适当的名称,例如 localhost_ping
  2. 若要创建监视器,请在导航窗格中展开负载平衡,单击监视器,然后单击添加
  3. 在“目标 知识产权”字段中,指定 127.0.0.1 IP地址,如以下屏幕截图所示。

    配置监视器

  4. 创建服务并在“名称”字段中指定适当的名称,例如 随时准备好服务
  5. 若要创建服务,请在导航窗格中展开负载平衡,单击服务,然后单击添加
  6. 在“服务器”字段中指定不存在的知识产权地址。

    配置监视器

  7. 端口字段中指定 80。
  8. 从“可用监视器”列表中添加已创建的监视器。
  9. 创建负载平衡虚拟服务器并在名称字段中指定适当的名称。
  10. 若要创建负载平衡虚拟服务器,请在导航窗格中展开负载平衡,单击服务,然后单击添加
  11. 在“知识产权地址”字段中指定网站的 知识产权地址。
  12. 从协议列表中选择 HTTP
  13. 在端口字段中键入 80。
  14. 在 NetScaler版本 9和 10上,选择您在“服务”选项卡中创建的服务的“活动”选项,如下面的屏幕截图所示。在 NetScaler版本 11中,此选项已弃用。

    选择操作选项

  15. 单击策略选项卡。
  16. 将您创建的响应程序策略绑定到网站的 超文本传输协议负载平衡 贵宾地址。
  17. 创建具有网站和端口 知识产权地址为 443的安全负载平衡虚拟服务器。

要从设备的命令行界面创建与上述过程类似的配置,请运行以下命令:

启用ns功能响应程序将响应程序操作http\u添加到\u https\u actin重定向“https://”+http.req.hostname.http\u URL\u SAFE+http.req.URL.PATH\u和\u QUERY.http\u URL\u SAFE”添加响应程序策略http_to_https_pol http.REQ.是否有效http_to_https_actin RESET add lb monitor localhost_ping ping-LRTM ENABLED-destIP 127.0.0.1添加服务始终启动服务1.2.3.4 http 80-gslb NONE-maxClient 0-maxReq 0-cip ENABLED dummy-usip NO-sp OFF-cltTimeout 180-svrTimeout 360-CKA NO-TCPB NO-CMP YES bind lb monitorlocalhost_ping Always_UP_服务添加lb vserver http_site.com http 10.217.96.238 80-persistenceType COOKIEINSERT-超时0-cltTimeout 180绑定lb vserver http_site.com Always_UP_服务绑定lb vserver http_site.com-策略名称http_to_https_pol-优先级1-gotoPriorityExpression END<--需要复制-->

注意

  • 端口 80负载平衡重定向虚拟服务器的状态必须为 向上的才能重定向工作。
  • 如果 HTTPS虚拟服务器未处于活动状态,网状物浏览器可能无法正确重定向。
  • 此重定向设置允许多个域绑定到同一 知识产权地址的情况。
  • 如果客户端向重定向虚拟服务器发送无效的 超文本传输协议请求,则设备会发送 重置消息代码。
如何使用响应程序将 超文本传输协议请求重定向到 HTTPS