Zajmuję się tworzeniem aplikacji ASP.NET 3.5 z Visual Studio 2008.Request.ServerVariables [ "SERVER_NAME"] jest zawsze localhost
Moja domyślna strona ma jakiś kod przekierowania w metodzie Page_Load:
protected void Page_Load(object sender, EventArgs e)
{
string sname = Request.ServerVariables["SERVER_NAME"].ToLower();
if (sname.ToLower().Contains("intranet"))
{
Response.Redirect("/intranet/Default.aspx");
}
else if ((sname.ToLower().Contains("extranet")))
{
Response.Redirect("/extranet/Default.aspx");
}
else {
Response.Redirect("/web/Default.aspx");
}
}
Zmodyfikowałem plik hosts tak, aby intranet i ekstranet przekierowywały na mój komputer lokalny.
127.0.0.1 intranet
127.0.0.1 extranet
Następnie wpisuję adres URL http://extranet w mojej przeglądarce.
Jednak problemem jest to, że wartość zmiennej serwera wrócił z Request.ServerVariables [ „SERVER_NAME”] jest zawsze „localhost”, a nie „extranet”
Każda pomoc, w jaki sposób uzyskać właściwą wartość?
Dziękujemy
Czy próbowałeś się upewnić, że nazwa serwera tutaj ma dodatkowe małe litery? – cchamberlain