为js和png文件重写规则到web.config

时间:2014-03-24 11:19:34

标签: c# asp.net-web-api

我有一个应用程序ASP.Net,带有c#的Web api,使用https,我希望js,css文件和图像与http一起发送。 我尝试不同的想法,但它不起作用。 我试过这个:

<rewrite>
  <rules>
    <rule name="Redirect Image to HTTP">
      <match url=".*\.(gif|jpg|jpeg|png|css|js)$"/>  
      <action type="Redirect" url="http://{SERVER_NAME}/{R:1}" redirectType="SeeOther"/>

  </rules>
</rewrite>

我做错了什么?

2 个答案:

答案 0 :(得分:0)

试试这个

<rules>
    <rule name="Redirect Image to HTTP">
      <match url=".*\.(gif|jpg|jpeg|png|css|js)$"/>  
      <action type="Redirect" url="http://{SERVER_NAME}/{R:1}" redirectType="Found"/>

  </rules>

答案 1 :(得分:0)

您可能应将HTTPS指定为条件:

<rewrite>
  <rules>
    <rule name="Redirect Image to HTTP">
      <match url=".*\.(gif|jpg|jpeg|png|css|js)$"/>  
      <conditions>
           <add input="{HTTPS}" pattern="ON" />
      </conditions>
      <action type="Redirect" url="http://{SERVER_NAME}/{R:1}" redirectType="SeeOther"/>
  </rules>
</rewrite>
顺便说一下,最好在正则表达式中使用.+而不是.*