我正在尝试将除少数网址之外的所有网址重写为_main.php?url=/url/path/here
(例外情况是系统,框架,_Assets或管理员文件夹)。我有一个RegEx为我做这个匹配:(^|\n)(?!/?(?:_Assets|Administrator|Frameworks|System)).+
但我真的不明白如何在IIS8中正确地做到这一点。它当前所做的是在我加载页面时向我提供正确的数据,但它不会重写URL,如下图所示:
我的规则看起来像这样(没有条件或变量):
我也试图关注this指南,但这似乎与我想要实现的完全相反,而且我不知道如何反过来。
答案 0 :(得分:0)
我设法通过将正则表达式更改为(^|\n)(?!_main.php\\?)(?!/?(?:_Assets|Administrator|Frameworks|System)).+
(忽略_main.php)然后将规则更改为重定向而不是重写来解决此问题,从而达到了预期的效果。