2

outboundrule を使用して html 応答を書き直そうとしていますが、うまくいきません: これは私の inbound と outbound のルールです:

    <rules>             
    <rule name="IE56 Do not gzip js and css" stopProcessing="false">
            <match url="\.(css|js|emz|jpg|htm|html)" />
            <action type="None" />
            <serverVariables>
             <set name="HTTP_ACCEPT_ENCODING" value="" />
               </serverVariables>
    </rule>


<rule name="Route the requests for eserver" patternSyntax="ECMAScript">
    <match url="^eServer/(.*)" />
    <conditions logicalGrouping="MatchAny">
               <add input="{CACHE_URL}" pattern="^(https?)://" />
    </conditions>
    <action type="Rewrite" url="{C:1}://mckyesvr/eServer/{R:1}" />
    <serverVariables>
               <set name="HTTP_ACCEPT_ENCODING" value="" />
    </serverVariables>
    </rule>

      <outboundRules>               
    <rule name="ReverseProxyOutboundRule1" preCondition="ResponseIsHtml1">
     <match filterByTags="A, Area, Base, Form, Frame, Head, IFrame,Img,    Input, Link, Script" pattern="^http(s)?://mckyesvr/eServer/(.*)" ignoreCase="true" />
        <conditions>
                       <add input="{URL}" pattern="/PageLoader" negate="true" />
        </conditions>
        <action type="Rewrite" value="/eServer/{R:2}" />
</rule>


<rule name="ReverseProxyOutboundRule8" preCondition="ResponseIsHtml1">
<match pattern="http://mckyesvr/eServer/PageLoader.asp?Page=Process_Safety.dsp"/>
<action type="Rewrite" value="/eServer/PageLoader.asp?Page=Process_Safety.dsp" />
</rule>

これらは、次の HTML 応答フォームを持つものを除いて、ほぼすべての HTML 応答で完全に機能します。

    "<html xmlns:v="urn:schemas-microsoft-com:vml"
    xmlns:o="urn:schemas-microsoft-com:office:office"
    xmlns:x="urn:schemas-microsoft-com:office:excel"
    xmlns="http://www.w3.org/TR/REC-html40">

.......など、これは私が書き直したい部分です: <_a href="http://mckyesvr/eServer/PageLoader.asp?Page=Process_Safety.dsp" target="_parent">戻るプロセスの安全性へ------

圧縮を変更したり、送信ルールを変更したり、1000 個のパラメーターを移動したりしましたが、今まで何もうまくいきませんでした。上記の HTML 応答だけでなぜこれが起こっているのかわかりません。コード化されているようです。 Outboundrules がそれをキャッチしないためです。

4

0 に答える 0