UrlRewrite IIS使现有图像URL与ImageResizer一起使用

时间:2013-08-29 22:30:54

标签: iis imageresizer urlrewriter

我们正在尝试将Imageresizer与磁盘缓存功能以及sqldatareader一起使用。它希望网址形式为:

http://somesite.com/image/ {图像标识}。{扩展}

而我们网站中的所有图片链接目前都是:

http://somesite.com/image.aspx?imageid= {图像标识}&安培;格式= {扩展}

到目前为止,我发现转换它们的最佳解决方案是UrlRewrite,但是我们正在采取与其意图相反的方式(将不错的网址变得令人讨厌)。我一直在努力让重写规则正确,并希望有人可以提供帮助。以下是我目前的情况,我知道这可能是完全错误的:

 <rewrite>
     <rules>
         <rule name="RewriteUserFriendlyURL1" stopProcessing="true">
             <match url="^image.aspx?([^imageid=]+)$" ignoreCase="true" />
             <conditions>
                 <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="false" />
                 <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
             </conditions>
             <action type="Rewrite" url="image/{R:1}.jpg" />
         </rule>
     </rules>
  </rewrite>

1 个答案:

答案 0 :(得分:0)

能够获得使用以下规则的基本功能。

<rule name="Redirect Category Name and Sort By" stopProcessing="true">
    <match url="^image\.aspx$" ignoreCase="true" />
    <conditions logicalGrouping="MatchAll" trackAllCaptures="true">
        <add input="{QUERY_STRING}" pattern="^imageid=([0-9]+)" />
    </conditions>
    <action type="Rewrite" url="image/{C:1}.jpg" appendQueryString="true" />
</rule>