如何从HttpContext(asp.net)获取"Host:"标头

Pio*_*pla 10 c# asp.net asp.net-mvc

我需要从不同的域服务器部分应用程序.确切地说,我有一个网站的子部分应该从特定于区域的域提供.例如:

  • / fr/*应该来自www.domain.fr
  • / uk/*应该来自www.domain.co.uk等服务器.

我想创建一个路由条目,将具有错误域的请求重定向到正确的域.但我不知道如何从HttpContext访问http头信息.

欢迎任何帮助.

Aar*_*ron 17

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"];
Run Code Online (Sandbox Code Playgroud)


eug*_*neK 6

HttpContext.Current.Request.Url.Host

  • 它不起作用,它总是返回相同的值.(即即使我使用127.0.0.1或"Anyotherdomain或ip address"访问该站点,它也会返回localhost) (2认同)

Bra*_*itz 5

我认为你想要 Request.Headers["host"]