问题描述
好
我正在尝试从azure Web应用程序中的路径重写URL到另一个域。 我有一个有效的案例,另一个无效。
情况1。这种情况有效:
我有域A(test.com),我想将请求重写为域B(example.com),保留用户在浏览器中看到的URL中的域A。
步骤1:我启用了反向代理: applicationHost.xdt
<? xml version = "1.0" encoding = "utf-8"?>
<configuration xmlns: xdt = "http://schemas.microsoft.com/XML-Document-Transform">
<system.webServer>
<proxy xdt: Transform = "InsertIfMissing" enabled = "true" preserveHostHeader = "false" reverseRewriteHostInResponseHeaders = "false" />
</system.webServer>
</configuration>
第2步:创建重写规则 web.config
<rules>
<rule name = "rule 1">
<match url = "(. *)" />
<action type = "Rewrite" url = "https://example.com/" appendQueryString = "true" logRewrittenUrl = "false" />
</rule>
</rules>
这没问题。
情况2。这种情况不起作用:
我拥有域/路径A(test.com/path),并且我希望将请求重写为域B(example.com),并保留用户在浏览器中看到的URL中的域/路径A。
注意:域A的路径不是域B的一部分
步骤1:我重复了上一步骤
第2步:创建重写规则 web.config
<rules>
<rule name = "rule 2">
<match url = "path" />
<action type = "Rewrite" url = "https://example.com/" appendQueryString = "true" logRewrittenUrl = "false" />
</rule>
</rules>
正在发生的事情是重写可以,但是从“域b”对文件的任何访问都会得到404。 enter image description here
第2种情况下正确的配置是什么?
非常感谢您
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)