2009-01-15 5 views
1

Je suis nouveau au développement avec .NET et travaille sur un projet personnel. Mon projet permettra aux utilisateurs de créer leur propre site mobile simple.C# HttpModule pour gérer les pseudo sous-domaines

Je voudrais écrire un module HTTP qui va gérer les pseudo sous-domaines.

J'ai déjà configuré mon joker DNS, so sub.domain.com et xxx.domain.com etc. point à la même application. Je veux être en mesure d'extraire les sous-parties et ID de sub.domain.com/pageID.html URL et charger les paramètres de la page à partir d'un serveur de base de données afin de construire et de rendre la page au client.

Je peux le faire avec des outils de réécriture d'URL comme isapirewrite, mais je veux que mon application soit indépendante du système d'exploitation afin que le serveur ne nécessite pas l'installation d'une application tierce. Est-il possible de le faire avec des gestionnaires HTTP?

Quelqu'un peut-il poster un exemple?

Répondre

5

Vous pouvez consulter le domaine à tout moment. Où le faire dépend des objectifs de votre application. Par exemple. Si vous voulez servir différentes pages en fonction du domaine, vous pouvez faire comme ceci:

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"); 
     } 
    } 
} 
+0

Comment devrait-il être utilisé dans ASP.NET? – alerya

Questions connexes