示例 12:配置重写以更改 Citrix ADC 设备上的客户端请求中的主机名和 URL
Citrix ADC 设备上的重写功能用于将客户端请求中的可用 URL 转换为后端服务器可以理解的其他 URL。您可以通过使用重写功能获得以下好处:
通过隐藏客户端请求的资源的实际 URL 来增强安全性。
防止未经授权的用户访问网络资源。
考虑一个示例,其中您的当前组织被其他组织收购。管理员很难将新网址通知所收购组织的每个用户。在这种情况下,使用重写功能变得方便更改主机名和 URL 中的客户端请求获得的组织的网站。当网站维护时,您可以使用重写临时更改客户端请求中的 URL。
以下部分介绍了使用重写功能更改客户端请求中的主机名和 URL 的过程。
考虑一个用户在 Web 浏览器中输入http://www.example.com
URL 的示例。网站管理员希望 Citrix ADC 设备将客户端请求中的前面的 URL 转换为http://myexample.example.net.in/resource/inventory/s?t=112
。
在上面的示例中,网站管理员希望 Citrix ADC 设备将“example.com”域名替换为“myexample.example.example.net.in”,并将 URL 替换为“资源/清单/秒?等于 112 英寸。
使用 CLI 执行以下操作
使用 SSH 登录到 Citrix ADC 设备。
添加重写操作。
add rewrite action rewrite_host_hdr_act replace "HTTP.REQ.HEADER(\"Host\")" "\"myexample.example.net.in\""
add rewrite action rewrite_url_act replace HTTP.REQ.URL.PATH_AND_QUERY "\"/resource/inventory/s?t=112\""
为重写操作添加重写策略。
add rewrite policy rewrite_host_hdr_pol "HTTP.REQ.HEADER(\"Host\").CONTAINS(\"www.example.com\") "rewrite_host_hdr_act
add rewrite policy rewrite_url_pol "HTTP.REQ.HEADER(\"Host\").CONTAINS(\"www.example.com\") "rewrite_url_act
将重写策略绑定到虚拟服务器。
bind lb vserver rewrite_LB -policyName rewrite_host_hdr_pol -priority 10 -gotoPriorityExpression 20 -type REQUEST
bind lb vserver rewrite_LB -policyName rewrite_url_pol -priority 20 -gotoPriorityExpression END -type REQUEST