【发布时间】:2018-08-29 11:03:06
【问题描述】:
我想创建一个 URL 重写规则,在没有的 URL 上添加 /,例如:
www.domain.com/news/latest 将被重定向到 www.domain.com/news/latest/
下面的规则正是这样做的,但我遇到的问题有两个:
此重写规则正在应用于图像文件等内容。 因此,例如
domain.com/globalassets/icons/image.svg更改为domain.com/globalassets/icons/image.svg/导致 404 它不会发生在 CSS 文件中,这很奇怪,可能是因为我在 MVC 中使用RegisterBundles方法添加它们?这是一个使用 CMS(episerver)的基于 ASP.NET MVC 的网站,所以我想忽略管理区域中的任何重定向,所以我添加了第二条规则,但它再次对 CSS 和图像进行破坏管理区域。
这是我到目前为止所得到的,谁能帮我让这条规则正常工作?
<rewrite>
<rules>
<rule name="Exclude Slash Episerver " stopProcessing="true">
<match url="^episerver/" />
<action type="None" />
</rule>
<rule name="Add trailing slash" stopProcessing="true">
<match url="(.*[^/])$" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Redirect" redirectType="Permanent" url="{R:1}/" />
</rule>
</rules>
</rewrite>
【问题讨论】:
标签: asp.net-mvc url-rewriting iis-7.5 url-rewrite-module