您需要在IIS管理器中配置重写映射和规则。打开IIS管理器,找到您的网站并导航到“URL重写”。
该程序的深入文档可以找到here。
一旦你创建了一个重写映射specifing新的网址来取代旧的URL,像下面应该出现在你的web.config文件:
<rewriteMaps>
<rewriteMap name=”Redirects”>
<add key=”/mystore/storename/about-the-store” value=”/mystore/storename” />
<add key=”/mystore/storename1/about-the-store” value=”/mystore/storename1” />
</rewriteMap>
</rewriteMaps>
在这里,我们基本上是提供ASP .net与我们页面的新位置,并执行从旧URL到新的301重定向。
为了保持干净,您可以向项目的根目录添加一个名为'redirect.config'的新文件,并将上述内容复制并粘贴到文件中,然后将其添加到system.webServer下的web.config文件中:
<rewrite>
<rewriteMaps configSource=”redirect.config” />
<rules>
<rule name=”Redirect Rules”>
<match url=”.*” />
<conditions>
<add input=”{Redirects:{REQUEST_URI}}” pattern=”(.+)” />
</conditions>
<action type=”Redirect” url=”{C:1}” />
</rule>
</rules>
</rewrite>
在这里,我们将web.config指向我们的redirect.config文件并传递需要的参数或“规则”以使URL切换。
redirect.config包含商店的名称,但在我的情况下会有成千上万的商店,所以我不能在这样的配置文件中添加条目。 – Ali
在这种情况下,我认为重写地图仍然是您最大的希望。您应该可以自定义参数以满足您的需求。也许这[后](https://stackoverflow.com/questions/18877075/multiple-301-redirect-for-multiple-pages-or-url)可以有一些帮助?祝你好运。 –