c#HttpModule处理伪子域

时间:2009-01-15 20:13:58

标签: asp.net pseudocode wildcard-subdomain

我不熟悉.NET开发和个人项目。我的项目将允许用户创建自己的简单移动网站。

我想编写一个处理伪子域的HTTP模块。

我已经设置了我的DNS通配符,so sub.domain.comxxx.domain.com等指向同一个应用程序。我希望能够从sub.domain.com/pageID.html URL中提取子部分和ID部分,并从数据库服务器加载页面设置,以便构建页面并将其呈现给客户端。

我可以使用像isapirewrite这样的URL重写工具来完成它,但我希望我的应用程序独立于操作系统,以便服务器不需要安装任何第三方应用程序。

是否可以使用HTTP处理程序执行此操作?

有人发帖吗?

1 个答案:

答案 0 :(得分:5)

您可以随时查看域名。在哪里做它取决于您的应用程序的目标。例如。如果你想根据你可以这样做的域提供不同的页面:

public class MyModule : IHttpModule
{
    public void Dispose()
    {
    }

    public void Init(HttpApplication context)
    {
        context.BeginRequest += context_BeginRequest;
    }

    void context_BeginRequest(object sender, EventArgs e)
    {
        HttpApplication app = sender as HttpApplication;
        string host = app.Request.Url.Host;
        if(host == "first.domain.com")
        {
            app.Context.RewritePath("~/First.aspx");
        }
    }
}