ASP.Net Redirect请求从特定URL到我网站的特定部分

时间:2014-06-03 09:15:23

标签: c# asp.net iis url-redirection

我们的服务器管理员已在IIS中为服务器上的网站设置了“站点绑定”,这样当最终用户使用特定网址时,它会重定向到我们的网站。

我需要能够确定何时发生了其中一次重定向,然后将最终用户置于网站上的特定页面上。

有人可以帮忙吗?

3 个答案:

答案 0 :(得分:1)

您的问题是用户被重定向到您的网站,但这并不是IIS网站绑定的工作原理。它们更像是单个站点的别名。如果是这种情况,并且站点有多个绑定,并且您希望根据使用的绑定进行重定向,那么您可以在web.config system.webServer部分中使用重写规则,如下所示:

    <rewrite>
        <rules>
            <clear />
            <rule name="redirect" stopProcessing="true">
                <match url="(.*)" />
                <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
                    <add input="{SERVER_NAME}" pattern="www.binding1.com" />
                </conditions>
                <action type="Redirect" url="http://www.binding2.com/pages/binding1home" />
            </rule>
        </rules>
    </rewrite>

答案 1 :(得分:0)

您可以在Request.ServerVariables下找到绑定名称:&#34; HTTP_HOST&#34;或&#34; SERVER_NAME&#34;。如果您有权访问服务器变量?如果是这样,如果找到指定的绑定名称,则可以重定向到特定页面。 (见:MSDN

答案 2 :(得分:0)

根据重定向的设置方式,您可以尝试使用当前请求的UrlReferrer属性:

Request.UrlReferrer