我指的是文档这里
我对url重写的理解是,当请求(
/folderA/folderB
)到达IIS时,URL重写发生在开始请求阶段。 IIS 会将 url 重写为 /folderA/folderC
,然后 IIS 会尝试从 folderC
获取文档。但就我而言,URL 并未被重写,然后从 folderA
获取文档。以下是我的目录结构
Root-Folder\
folderA\
folderC
从 IIS 日志中,我可以确认该 url 是
/folderA/folderB
。我启用了 Failed Request Tracing
,但是我没有看到任何与将 /folderA/folderB
重写为 /folderA/folderC
相关的 xml 文件。从 Chrome 开发工具中,我可以确认请求网址是 /folderA/folderB
定义的规则适用于
folderA/folderB
的正则表达式模式,操作是重写为 folderA/folderC
。
IIS 版本是 10,我正在尝试托管 Angular 16 应用程序。
正如Lex Li所说,重写url不会改变。如果你想把请求从
/folderA/folderB
改写为/folderA/folderC
,请求内容改变了,但是URL不改变,可以参考这个规则:
<rule name="Rewrite for folderB">
<match url="^folderA/(.*)" />
<action type="Rewrite" url="folderA/folderC" />
</rule>
如果你也想更改url,可以参考这个规则:
<rule name="Redirect for folderB">
<match url="^folderA/(.*)" />
<action type="Redirect" url="folderA/folderC" />
</rule>