redirect - 带有输入参数的 IIS URL 重定向
问题描述
无法实现我的第一个 IIS 重定向。
我有一个网址:
domain.com/Q7WebServer/Q7WebSrv.exe/datasnap/rest
它可以接受由 / 字符分隔的一系列输入参数:
domain.com/Q7WebServer/Q7WebSrv.exe/datasnap/rest/GetDateTime
domain.com/Q7WebServer/Q7WebSrv.exe/datasnap/rest/GetUsageData
等等等等
我想重定向到一个新模块(实际上是一个 DLL):
domain.com/Q7WebServer/Q7WebSrvISAPI.dll/datasnap/rest
我首先将重定向添加到文件本身(Q7WebSrv.exe),它本身就可以正常工作。只有当我添加变量时,它才会开始以我不理解的方式表现。例如,如果我将重定向设置为 Q7WebSrvISAPI.dll$V$Q(使用 EXACT 标志)并请求
domain.com/Q7WebServer/Q7WebSrv.exe
我回来
domain.com/Q7WebServer/Q7WebSrvISAPI.dll/Q7WebServer/Q7WebSrv.exe
无论我使用哪个 $ 变量,它仍在尝试将原始 URL 的一部分附加到重定向。我什至不想了解附加 / 输入参数时会发生什么。
我需要进行 URL 重写吗?那是一整罐我还不想打开的蠕虫。
解决方案
你可以试试这个规则:
<rule name="test" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="www.domian.com" />
<add input="{REQUEST_URI}" pattern="/Q7WebServer/Q7WebSrv.exe/datasnap/rest/(.*)" />
</conditions>
<action type="Redirect" url="http://ww.domain.com/Q7WebServer/Q7WebSrvISAPI.dll/datasnap/rest/{C:1}" />
</rule>
推荐阅读
- java - 无法设置 JTree 节点
- mongodb - 用于可变排序的 mongoDB 模式
- python - Plotly 可视化可以显示颜色、符号、大小等的单独图例吗?
- javascript - 如何使用 AJAX 请求显示图像 - Django
- flutter - 无法定位颤振 SDK
- python - “任务”对象没有属性“任务集”
- javascript - 是否可以在请求正文中使用模板文字对 Google Calendar API 进行空闲查询?
- excel - 如何根据 A 列中的匹配数据和另一个条件将条件格式应用于单元格
- android - 将 OpenCL 与 Android 集成
- javascript - 如何在选择时设置默认状态和样式