我已经并且发布了web.config中的规则正在捕捉我想要忽略的内容。
我有:
http://domain.com/video-conferencing-room/australia/australian-capital-territory/barton
通过以下规则获取。我添加了部分希望可以解决它,但没有快乐。
的路由 <rule name="video-conferencing-room-country">
<match url="^video\-conferencing\-room/([0-9a-z- ]+)" />
<conditions>
<add input="{HTTP_HOST}" matchType="Pattern" pattern="^video\-conferencing\-room/([0-9a-z- ]+)/([0-9a-z-, ]+)/([0-9a-z-, ]+)" ignoreCase="true" />
</conditions>
<action type="Redirect" url="/meeting-rooms/{UrlEncode:{R:1}}" redirectType="Permanent" />
</rule>
但是这种情况会阻止这样的网址: http://domain.com/video-conferencing-room/australia
点击规则。
我更新为使用{URL},并且: http://domain.com/video-conferencing-room/australia
现在有效,
但我还有一个问题
http://domain.com/video-conferencing-room/australia/australian-capital-territory/barton
这条规则会改写:
<rule name="video-conferencing-room country state">
<match url="^video\-conferencing\-room/([0-9a-z- ]+)/([0-9a-z-, ]+)" />
<conditions>
<add input="{URL}" matchType="Pattern" pattern="^video\-conferencing\-room/([0-9a-z- ]+)/([0-9a-z-, ]+)/([0-9a-z-, ]+)" ignoreCase="true" negate="true" />
</conditions>
<action type="Redirect" url="/meeting-rooms/{UrlEncode:{R:1}}/{UrlEncode:{R:2}}" redirectType="Permanent" />
</rule>
当我想忽略它时。
你知道我做错了吗?
答案 0 :(得分:1)
您的情况不正确,您使用{HTTP_HOST}进行设置,{HTTP_HOST}只是主机名部分,即在您的示例domain.com中。
请尝试使用{URL}作为输入,其中包含包含视频会议...部分的网址。
答案 1 :(得分:0)
尝试在最后添加$
^video\-conferencing\-room/([0-9a-z- ]+)/([0-9a-z-, ]+)$
你可以删除条件。字符串结尾的$ states