我正在尝试在我的netscaler中使用内容切换操作,用连字符替换域名中的句点。
这就是我目前正在做的事情;
HTTP.REQ.HOSTNAME.BEFORE_STR(".") + "-" + HTTP.REQ.HOSTNAME.DOMAIN.BEFORE_STR(".") + "-" + HTTP.REQ.HOSTNAME.DOMAIN.AFTER_STR(".")
这不仅看起来很草率,而且只适用于3部分域名。
EG:它适用于“site.domain.com”但不适用于“sub.site.domain.com”
我无法为HOSTNAME或DOMAIN部分找到简单的.REPLACE(str,result)。
.PATH提供了一个简单易用的.PATH.GET(int_path_part),但HOSTNAME没有。
我使用的是11.0.69版Netscaler软件。
我在这里缺少什么?这似乎应该很简单,但表达式编辑器似乎妨碍了我这样做的能力。
答案 0 :(得分:0)
RE“我无法为HOSTNAME或DOMAIN部分找到简单的.REPLACE(str,result)。”
在Rewrite Action上选择type = Replace_ALL ||取代
您可以使用正则表达式进行逻辑替换,也可以使用静态替换,只需对每个应用程序执行1次重写策略/操作。您还可以执行KV Pair类型的替换,在kv对中查找要替换的内容