以编程方式更改web配置中的页面重定向

本文关键字:重定向 配置 编程 方式更 web | 更新日期: 2023-09-27 17:59:42

嗨,我想以编程方式更改webconfig中的页面重定向。我在web配置中有以下代码。

<location path="WebForm2.aspx">
    <system.webServer>
      <httpRedirect enabled="true" destination="http://google.com" httpResponseStatus="Permanent" />
    </system.webServer>
  </location>

我想使用c以编程方式启用或禁用httpredirect。请建议我怎么做。

以编程方式更改web配置中的页面重定向

我尝试了Rahul建议的代码,但无法通过程序更改Web.config<location>元素。

作为替代方案,您可以编写一个HttpHandler来拦截到WebForm2.aspx页面的请求,并将用户重定向到另一个URL:

处理程序:

namespace StackOverflowHelp
{
    public class RedirectHandler : IHttpHandler
    {
        public bool IsReusable
        {
            get { return true; }
        }
        public void ProcessRequest(HttpContext context)
        {
            Uri uri = context.Request.Url;
            if (uri.AbsolutePath == "/WebForm2.aspx.aspx")
                context.Response.Redirect("http://google.com");
        }
    }
}

Web.config:中的处理程序注册

  <system.webServer>
    <handlers>
      <add verb="*" path="WebForm2.aspx"
       name="RedirectHandler"
       type="StackOverflowHelp.RedirectHandler"/>
    </handlers>