我在本地计算机上安装了ARR,并设置了一个服务器场,其中包含一台服务器(localhost)。我添加了两个重定向路由规则。但是,它不会进行重定向。我的默认网站有另外一个绑定,如下所示:localhost.mycompany.com。我尝试将它放在服务器场中,它仍然无法正常工作。重定向规则如下所示。
在模式中使用通配符
inbound pattern: */path2/*/*/*/method*
Redirect URL: /path1/path2/api/item/method
编辑:当我使用测试模式并根据我的规则输入其中一个网址时,它会成功解析它
还尝试将完整主机名(例如http://localhost.mycompany.com/..。)放入重定向规则以及使用别名 localServerFarm (这是服务器场的名称)。没有任何效果。
该模块在某些方面“正在工作”,因为当我有一个破坏的规则时,当我尝试在localhost上加载任何URL时,它肯定会告诉我它。一旦我修复了规则,我就不再收到错误消息,但它没有进行任何重定向。
答案 0 :(得分:0)
这只是让重定向规则正确的问题。在规则列表中有一个名为Input的列,它的设置是 URL路径。因此,模式匹配的唯一输入是URL的路径部分,不包括开头的/
。我所要做的就是将模式开头的*/
更改为*
,例如*/path2/*/*/*/method*
已更改为*path2/*/*/*/method*
。
我不知道输入字段是否有任何其他设置(它不能在规则定义屏幕中设置)但是对于任何创建规则的人都要记住只有没有前导的路径/
是用于评估模式匹配的内容。需要注意的是,如果您从路径的开头匹配,就像我一样,您不需要在模式开头的*
。但是,如果您进入测试模式屏幕并将完整的URL粘贴到输入数据中,它将不仅仅抓取该URL的路径部分并将其提供给模式匹配将使用整个字符串,因此它将需要{{1在你的模式开始工作。