【问题标题】:asp.net url rewriting dynamically using httphandler/httpmodule使用 httphandler/httpmodule 动态重写 asp.net url
【发布时间】:2012-10-12 08:47:08
【问题描述】:

我有一个 asp.net 应用程序,我需要执行以下操作:

假设我有一个名为 page1.aspx 的页面,我需要的是:

当用户请求将 page1.aspx?id=1 重定向到http://myapp/books

当用户请求将 page1.aspx?id=2 重定向到http://myapp/movies

书籍和电影是虚拟路径,我不想使用 web.config(重写部分)来执行此操作,因为这应该是动态的。

任何帮助将不胜感激

【问题讨论】:

    标签: c# asp.net url-rewriting httphandler httpmodule


    【解决方案1】:

    构建一个 HttpModule 并在 context_BeginRequest 中获取当前 URL。稍后有条件地重定向到新的 URL。

    public class RedirectionModule : IHttpModule
    {
        void context_BeginRequest(object sender, EventArgs e)
        {
    
          // get current url
          // conditionally redirect it
        }
    }
    

    [编辑] SEO URL重写ASP.NET请参考SEO URL rewriting ASP.NET页面

    【讨论】:

    • 我已经这样做了,问题在于 RewritePath 不起作用
    • 你能解释一下,当你重定向它时会发生什么。
    • 当你直接运行你的最终 url (http://myapp/movies) 时,它会显示有效的结果还是给出一些错误?
    • 当然会报错,电影不存在,我正在尝试制作友好的 seo url
    猜你喜欢
    • 1970-01-01
    • 2011-06-05
    • 2012-07-22
    • 2015-05-07
    • 1970-01-01
    • 1970-01-01
    • 2010-10-07
    • 2018-12-24
    • 1970-01-01
    相关资源
    最近更新 更多