Nic*_*hac 6 asp.net-mvc iis-7 url-rewriting
我有url重写规则,将www.domain2.com重定向到domain1.com根目录下的子文件夹(让我们称之为此文件夹子项目).在我的控制器中,我需要构建一个原始未修改路径的URL,但Request.Url属性(如AbsoluteUri或LocalPath)始终包含子项目子文件夹.
换句话说,如果用户键入:
www.domain2.com/controller/action
Run Code Online (Sandbox Code Playgroud)
urlrewrite使它成为:
www.domain1.com/subproject/controller/action
Run Code Online (Sandbox Code Playgroud)
我希望重建原始网址:
www.domain2.com/controller/action
Run Code Online (Sandbox Code Playgroud)
我可以硬编码从url中删除子项目并使用domain2开始url但是我需要一个通用的代码段,因为这个url重建将在一个可重用的库中.domain2可以在我的应用程序的设置中,但该子文件夹呢?
在参考中,这是重写规则:
<rewrite>
<rules>
<rule name="Redirect to subproject">
<match url=".*" />
<conditions>
<add input="{HTTP_HOST}" pattern="^(www.)?domain2.com" />
<add input="{PATH_INFO}" pattern="^/subproject/" negate="true" />
</conditions>
<action type="Rewrite" url="\subproject\{R:0}" />
</rule>
</rules>
</rewrite>
Run Code Online (Sandbox Code Playgroud)
谢谢
Kla*_*sen 23
您应该能够在Request.RawUrl中找到它.
| 归档时间: |
|
| 查看次数: |
6168 次 |
| 最近记录: |