2009-10-28 8 views
9

J'ai besoin de server des parties de mon application de différents domaines. Pour être précis, j'ai une sous-section du site qui devrait être desservie à partir d'un domaine spécifique à la région. Par exemple:Comment obtenir l'en-tête "Host:" à partir de HttpContext (asp.net)

  • /fr/* doit être servi de www.domain.fr
  • /uk/* doivent être serverd de www.domain.co.uk et ainsi de suite.

Je voudrais créer une entrée de route qui redirigera la demande avec un domaine incorrect vers le domaine correct. Mais je ne sais pas comment accéder au formulaire d'information en-tête http HttpContext.

Toute aide est la bienvenue.

Répondre

16
string requestedDomain = HttpContext.Current.Request.ServerVariables["HTTP_HOST"]; 
string requestScheme = HttpContext.Current.Request.Url.Scheme; 
string requestQueryString = HttpContext.Current.Request.ServerVariables["QUERY_STRING"]; 
string requestUrl = HttpContext.Current.Request.ServerVariables["URL"]; 
+0

HttpContext.Request.ServerVariables ["HTTP_HOST"] est ce que je cherchais. THX –

6

HttpContext.Current.Request.Url.Host

+0

HttpContext.Request.ServerVariables [ "HTTP_HOST"]; - fait l'affaire –

+2

Cela ne fonctionne pas, Il retourne toujours la même valeur. (c'est-à-dire qu'il retourne localhost même si j'accède au site en utilisant 127.0.0.1 ou "Anyotherdomain or ip address") –

Questions connexes