web.config里面的配置有谁了解? 这个url里面是什么意思?

无·法 您的网络发生故障,内容加载失败 2021-03-17 11:59:07
<match url=".*" /> 这个url不带域名的吗?


网站用的域名泛匹配。
期望这样的跳转方式,我提供几个范例:
http://test1.domainA.com/s.html?c=1234 跳转到:
http://test1.domainB.com/s.html?c=1234

http://aa34234.domainA.com/s.html?c=556677跳转到:
http://aa34234.domainB.com/s.html?c=556677

其中二级域名都是不定的,后面的参数也是不定的。

我做了表达式:^(.*?)domainA.com(.*)$
让它跳转到:{R:1}domainB.com{R:2}

{R:1}表示括号中匹配的第1组
{R:1}表示括号中匹配的第2组



<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="test001" stopProcessing="true">
<match url="^(.*?)domainA.com(.*)$" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
<action type="Redirect" url="{R:1}domainB.com{R:2}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>


上面代码经过反复测试并没有效果。好像那个url只能匹配参数形式,没道理啊
...全文
1157 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Rimifon 2021-03-19
  • 打赏
  • 举报
回复
URL 就是 ARR 里面的一个功能,ARR 是 Application Request Router,应用程序请求路由
Rimifon 2021-03-19
  • 打赏
  • 举报
回复
版主也来提问了啊,这个用的是 ARR 做的 rewrite 吧? URL 那个只包含 / 后面的内容,域名应该在 条件里面增加。建议你打开 IIS 控制台在控制台操作,在 web.config 里面操作,那是对这个规则熟得不要不要的老手才可能这么玩。
无·法 您的网络发生故障,内容加载失败! 2021-03-19
  • 打赏
  • 举报
回复
引用 2 楼 Rimifon 的回复:
版主也来提问了啊,这个用的是 ARR 做的 rewrite 吧? URL 那个只包含 / 后面的内容,域名应该在 条件里面增加。建议你打开 IIS 控制台在控制台操作,在 web.config 里面操作,那是对这个规则熟得不要不要的老手才可能这么玩。
不知道你说的ARR是什么。iis里面的 url重写 只是修改下url展示给用户,和跳转无关,它与“http重定向”是不一样的,昨天我比较过它们的差别,主要在action标签里面的type不一样。分别是<action type="Rewrite" url="xxxx">和<action type="Redirect" url="xxx">。



至于你说的在控制台操作,我早就找了台2008的服务器iis7测试界面操作,看生成的代码是什么样的,结果发现生成的完全不是一回事,标签头都变了,而且只能设置目标页,中间匹配的没地方设置,只能手写。最终是要在虚机上运行的,写好了放过去就行了,方便极了,不用写asp代码来做对应跳转了。

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧