Citrix ADC

重写 HTTP 重定向的端口和协议

虚拟服务器和绑定到它们的服务可能使用不同的端口。当服务通过重定向响应 HTTP 连接时,您可能需要配置 Citrix ADC 设备以修改端口和协议,以确保重定向成功完成。您可以通过启用和配置重新编写设置来执行此操作。

此设置仅影响 HTTP 和 HTTPS 流量。如果在虚拟服务器上启用此设置,则虚拟服务器会在重定向时重写端口,将服务使用的端口替换为虚拟服务器使用的端口。

如果虚拟服务器或服务是 SSL 类型,则必须在虚拟服务器或服务上启用 SSL 重定向。如果虚拟服务器和服务都是 SSL 类型,请在虚拟服务器上启用 SSL 重定向。

在以下情况下可以使用重新编写设置:

  • 虚拟服务器为 HTTP 类型,服务为 SSL 类型。
  • 虚拟服务器为 SSL 类型,服务为 HTTP 类型。
  • 虚拟服务器为 HTTP 类型,服务为 HTTP 类型。
  • 虚拟服务器为 SSL 类型,服务为 SSL 类型。

场景 1:虚拟服务器为 HTTP 类型,服务为 SSL 类型。在服务上启用 SSL 重定向和可选端口重写。如果启用了端口重写,则会重写 HTTPS URL 的端口。来自服务器的 HTTP URL 按原样发送到客户端。

仅启用 SSL 重定向。虚拟服务器可以在任何端口上配置。请参阅下表:

从服务器重定向 URL 重定向发送到客户端的 URL
http://domain.com/ http://domain.com/
http://domain.com:8080/ http://domain.com:8080/
https://domain.com/ https://domain.com/
https://domain.com:444/ https://domain.com:444/

SSL 重定向和端口重写已启用。虚拟服务器在端口 80 上进行配置。请参阅下表:

从服务器重定向 URL 重定向发送到客户端的 URL
http://domain.com/ http://domain.com/
http://domain.com:8080/ http://domain.com:8080/
https://domain.com/ https://domain.com/
https://domain.com:444/ https://domain.com/

SSL 重定向和端口重写已启用。在端口 8080 上配置虚拟服务器。请参阅下表:

从服务器重定向 URL 重定向发送到客户端的 URL
http://domain.com/ http://domain.com/
http://domain.com:8080/ http://domain.com:8080/
https://domain.com/ http://domain.com:8080/
https://domain.com:444/ http://domain.com:8080/

场景 2:虚拟服务器为 SSL 类型,服务为 HTTP 类型。如果启用了端口重写,则只重写 HTTP URL 的端口。服务器中的 HTTPS URL 按原样发送到客户端。

在虚拟服务器上启用SSL 重定向。虚拟服务器可以在任何端口上配置。请参阅下表。

从服务器重定向 URL 重定向发送到客户端的 URL
http://domain.com/ https://domain.com/
http://domain.com:8080/ https://domain.com:8080/
https://domain.com/ https://domain.com/
https://domain.com:444/ https://domain.com:444/

在虚拟服务器上启用SSL 重定向和端口重写。虚拟服务器在端口 443 上配置。请参阅下表:

从服务器重定向 URL 重定向发送到客户端的 URL
http://domain.com/ https://domain.com/
http://domain.com:8080/ https://domain.com/
https://domain.com/ https://domain.com/
https://domain.com:444/ https://domain.com:444/

SSL 重定向和端口重写已启用。虚拟服务器在端口 444 上配置。请参阅下表:

从服务器重定向 URL 重定向发送到客户端的 URL
http://domain.com/ https://domain.com:444/
http://domain.com:8080/ https://domain.com:444/
https://domain.com/ https://domain.com/
https://domain.com:445/ https://domain.com:445/

方案 3:虚拟服务器和服务类型为 HTTP。必须在虚拟服务器上启用端口重写。只重写 HTTP URL 的端口。服务器中的 HTTPS URL 按原样发送到客户端。

虚拟服务器在端口 80 上进行配置。请参阅下表:

从服务器重定向 URL 重定向发送到客户端的 URL
http://domain.com/ http://domain.com/
http://domain.com:8080/ http://domain.com/
https://domain.com/ https://domain.com/
https://domain.com:444/ https://domain.com:444/

拟服务器在端口 8080 上进行配置。请参阅下表:

从服务器重定向 URL 重定向发送到客户端的 URL
http://domain.com/ http://domain.com:8080/
http://domain.com:8080/ http://domain.com:8080/
https://domain.com/ https://domain.com/
https://domain.com:445/ https://domain.com:445/

方案 4:虚拟服务器和服务类型为 SSL。如果启用了端口重写,则只会重写 HTTPS URL 的端口。来自服务器的 HTTP URL 按原样发送到客户端。

在虚拟服务器上启用SSL 重定向。虚拟服务器可以在任何端口上配置。请参阅下表:

从服务器重定向 URL 重定向发送到客户端的 URL
http://domain.com/ http://domain.com/
http://domain.com:8080/ http://domain.com:8080/
https://domain.com/ https://domain.com/
https://domain.com:444/ https://domain.com:444/

在虚拟服务器上启用SSL 重定向和端口重写。虚拟服务器在端口 443 上配置。请参阅下表:

从服务器重定向 URL 重定向发送到客户端的 URL
http://domain.com/ http://domain.com/
http://domain.com:8080/ http://domain.com:8080/
https://domain.com/ https://domain.com/
https://domain.com:444/ https://domain.com/

在虚拟服务器上启用SSL 重定向和端口重写。虚拟服务器在端口 444 上配置。请参阅下表:

从服务器重定向 URL 重定向发送到客户端的 URL
http://domain.com/ http://domain.com/
http://domain.com:8080/ http://domain.com:8080/
https://domain.com/ https://domain.com:444/
https://domain.com:445/ https://domain.com:444/

使用 CLI 在虚拟服务器上配置 HTTP 重定向

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

set lb vserver <name> -redirectPortRewrite (ENABLED | DISABLED)

示例:

set lb vserver Vserver-LB-1 -redirectPortRewrite enabled

使用 GUI 在虚拟服务器上配置 HTTP 重定向

  1. 导航到流量管理 > 负载平衡 > 虚拟服务器。
  2. 打开虚拟服务器,然后在“高级设置”窗格中,单击“流量设置”,然后选择“重写”。

使用 CLI 在 SSL 虚拟服务器或服务上配置 SSL 重定向

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

set ssl vserver <vServerName> - sslRedirect (ENABLED | DISABLED)

set ssl service <serviceName> - sslRedirect (ENABLED | DISABLED)

示例:

set ssl vserver Vserver-SSL-1 -sslRedirect enabled

set ssl service service-SSL-1 -sslRedirect enabled

使用 GUI 在 SSL 虚拟服务器或服务上配置 SSL 重定向和 SSL 端口重写

  1. 导航到“流量管理”>“负载平衡”>“虚拟服务器”,然后打开虚拟服务器。
  2. 在“高级设置”中,单击“SSL 参数”,然后选择“SSL 重定向”。