我在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>但是这个条件会像这样停止urls: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>当我想忽略它的时候。
你知道我做错了什么吗?
发布于 2015-11-26 02:16:29
您的条件不正确,您正在使用{HTTP_HOST}设置它,这只是您的示例domain.com中的主机名部分。
相反,尝试使用{ URL }作为输入,它将包含包含视频会议的URL...零件。
发布于 2015-11-27 01:10:15
尝试在末尾添加$
^video\-conferencing\-room/([0-9a-z- ]+)/([0-9a-z-, ]+)$你可以删除这个条件。$ states表示字符串的结尾
https://stackoverflow.com/questions/33921878
复制相似问题