#region 得到客戶端IP
/// <summary>
/// 得到客戶端IP
/// </summary>
/// <returns></returns>
public string GetClientIp()
{
var ip = "127.0.0.1";
//穿過代理服務器取遠程用戶真實IP地址
if (HttpContext.Current == null
|| HttpContext.Current.Request == null
|| HttpContext.Current.Request.ServerVariables == null)
{
}
//CDN加速後取到的IP
else if (HttpContext.Current.Request.Headers["Cdn-Src-Ip"] != null)
{
ip = HttpContext.Current.Request.Headers["Cdn-Src-Ip"];
}
else if (HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != null)
{
ip = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();
}
else if (HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"] != null)
{
ip = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"].ToString();
}
else if (HttpContext.Current.Request.ServerVariables["HTTP_CLIENT_IP"] != null)
{
ip = HttpContext.Current.Request.ServerVariables["HTTP_CLIENT_IP"].ToString();
}
else if (HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"] != null)
{
ip = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"].ToString();
}
else
{
ip = HttpContext.Current.Request.UserHostAddress;
}
return ip;
}
#endregion 得到客戶端IP服務器