0
我现在有这个每语言相匹配的重写规则,但你可以看到他们都重写到同一页:如何创建多个URL
<rule name="help en">
<match url="^help?/?$"/>
<action type="Rewrite" url="help.aspx"/>
</rule>
<rule name="help sp">
<match url="^ayuda?/?$"/>
<action type="Rewrite" url="help.aspx"/>
</rule>
或更复杂的参数重写,如:
<rule name="news category overview_de">
<match url="^artikelen/([a-zA-Z0-9-+']+)?/?$" />
<action type="Rewrite" url="newsoverview.aspx?category={R:1}" />
</rule>
<rule name="news category overview_en">
<match url="^articles/([a-zA-Z0-9-+']+)?/?$" />
<action type="Rewrite" url="newsoverview.aspx?category={R:1}" />
</rule>
这占用了很多空间,那么有没有办法将这个缩短?
我查看了这个帖子:How to add multiple URL rewrite rules in a web.config,但这并没有缩短。 有没有一种方法可以重复match url
条件或向其添加多个网址?
更新1
我尝试这样做:
<rule name="news overview">
<match url="^(artikelen|articles)?/?$" />
<action type="Rewrite" url="newsoverview.aspx" />
</rule>
<rule name="news category overview">
<match url="^(artikelen|articles)/([a-zA-Z0-9-+']+)?/?$" />
<action type="Rewrite" url="newsoverview.aspx?category={R:1}" />
</rule>
但这会重定向请求,甚至对我的主页到newsoverview.aspx页面。
啊,tnx!这将如何处理更复杂的参数化重写?我添加了一个样本。 – Flo
@Flo - 查看我的编辑 –
嗨,看看我的更新。所有的主页请求现在也使用我的新重写规则重定向...我错过了什么? – Flo