在IIS中反向代理,正则表达式匹配除了两个URL之外的所有内容..?

时间:2017-02-20 10:35:32

标签: regex iis reverse-proxy

我需要将域反向代理的流量传输到其他服务器。我正在使用IIS和URL Rewrite,它工作正常。

但是,我需要错过反向代理中的两个特定网址(以/payments/paypal开头的任何内容)。

所以:

  • / =匹配
  • /testing =匹配
  • /testing/123/qwerty/something-else =匹配
  • /payments = 不匹配
  • /payments/123 = 不匹配
  • /paypal = 不匹配
  • /paypal/sandbox = 不匹配

我想我可能需要一个“负向前瞻”,但我不知道从哪里开始。

任何人都可以帮忙..?

1 个答案:

答案 0 :(得分:2)

应该这么简单:

^\/(?!(payments|paypal)).*$

含义: ^ =字符串的开头

\/ = 1 /

(?!(payments|paypal)) =负面展望

.* =任何内容(付款或PayPal除外)

$ =字符串结尾

请参阅:https://regex101.com/r/xVg36K/1