对于lbl adc(http反向代理),当它以“/”结尾时,我们需要重写来自服务的重定向url(http报头响应302,位置,见下面的示例),删除最后的“/”。重写还必须将响应代码从302更改为301。
如原始回复:
http/1.1 302号文件
地点:CEC2003/
传输编码:分块
日期:2019年8月21日星期三06:49:01 GMT
我想得到的结果是:
http/1.1 301号文件
地点:CEC2003
传输编码:分块
日期:2019年8月21日星期三06:49:01 GMT

最佳答案

请尝试此重写规则作为响应。
如果最后一个字符是“/”,则检查该条件。
接下来的两个操作更改响应代码,因此更改位置时不使用最后的“/”。

<rewriteHeaderRule enable="true" flow="RESPONSE"
                   name="changeResponseCodeAndCutLastSlash"
                   responseCode="302">
<conditions>
    <cond from="ENTITY_RESPONSE" name="Location">
        <regexTag>(.*)/$</regexTag>
    </cond>
</conditions>
<entities>
    <entity enable="true" entityName="FIRST-LINE" action="change">
        <regexTag>^(.*) (.*)(.*)</regexTag>
        <replaceTo>$1 301$3</replaceTo>
    </entity>
    <entity enable="true" entityName="Location" action="change">
        <regexTag>(.*)/$</regexTag>
        <replaceTo>$1</replaceTo>
    </entity>
</entities>

09-27 22:31