簡體   English   中英

忽略web.config重寫規則中的匹配項

[英]Ignore match in web.config rewrite rule

我有問題,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>

當我希望它被忽略時。

你知道我在做什么嗎?

您的條件不正確,請使用{HTTP_HOST}進行設置,這只是主機名部分,即在您的示例domain.com中。

而是嘗試使用{URL}作為輸入,其中將包括URL,其中包括視頻會議...部分。

嘗試最后添加$

^video\-conferencing\-room/([0-9a-z- ]+)/([0-9a-z-, ]+)$

您可以刪除條件。 字符串結尾的$狀態

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM