3

現時点では、1 つのページとすべての依存関係 (css、jpg など) のみが SSL になります。次のリライトを作成しました。

  <rule name="Not Appointment Form 4.1 SSL" enabled="true" patternSyntax="ECMAScript" stopProcessing="true">
      <match url=".*" negate="false" />
      <conditions>
          <!-- check if https is on -->
          <add input="{HTTPS}" pattern="on" />

          <!-- I'm only interested in the aspx files -->
          <add input="{PATH_TRANSLATED}" pattern=".aspx$" /> 

          <!-- anything BUT the page to be secured -->
          <add input="{PATH_INFO}" pattern="page-to-be-secured.aspx" negate="true" /> 
      </conditions>
      <action type="Redirect" url="http://mydomain{PATH_INFO}" redirectType="Permanent" />
  </rule>   

ページの名前を一致 URL (negate="false") に入れてみましたが、まだ機能しません。

個々の条件をそれぞれテストしましたが、すべて個別に機能しますが、全体として HTTPS 以外のページにリダイレクトされません。

4

1 に答える 1

2

簡単な方法は次のとおりです。

<rule name="Not Appointment Form 4.1 SSL" stopProcessing="true">
    <match url="^(.*)\.aspx$" />
    <conditions>
        <add input="{R:1}" pattern="page-to-be-secured" negate="true" />
        <add input="{HTTPS}" pattern="^ON$" />
    </conditions>
    <action type="Redirect" url="http://{HTTP_HOST}/{R:0}" />
</rule>

ルールは、で終わるすべての要求された URL に適用され.aspxます。{R:1}前の部分に対応する最初の後方参照 ( ).aspxが一致せずpage-to-be-secured、 を使用しているHTTPS場合、リダイレクトがトリガーされます。

于 2013-05-15T15:23:04.757 に答える