zoukankan      html  css  js  c++  java
  • C# Web 获取客户端IP

    #region 获取web客户端ip

            /// <summary>
            /// 获取web客户端ip
            /// </summary>
            /// <returns></returns>
            public static string GetWebClientIp()
            {
             
                    string userIP = "未获取用户IP";
     
                    try
                    {
                        if (System.Web.HttpContext.Current == null
                    || System.Web.HttpContext.Current.Request == null
                    || System.Web.HttpContext.Current.Request.ServerVariables == null)
                            return "";
     
                        string CustomerIP = "";
     
                        //CDN加速后取到的IP simone 090805
                        CustomerIP = System.Web.HttpContext.Current.Request.Headers["Cdn-Src-Ip"];
                        if (!string.IsNullOrEmpty(CustomerIP))
                        {
                            return CustomerIP;
                        }
     
                        CustomerIP = System.Web.HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
     
                       
                        if (!String.IsNullOrEmpty(CustomerIP))
                            return CustomerIP;
     
                        if (System.Web.HttpContext.Current.Request.ServerVariables["HTTP_VIA"] != null)
                        {
                            CustomerIP = System.Web.HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
                            if (CustomerIP == null)
                                CustomerIP = System.Web.HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
                        }
                        else
                        {
                            CustomerIP = System.Web.HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
     
                        }
     
                        if (string.Compare(CustomerIP, "unknown", true) == 0)
                            return System.Web.HttpContext.Current.Request.UserHostAddress;
                        return CustomerIP;
                    }
                    catch { }
     
                    return userIP;
               
            }
            #endregion
  • 相关阅读:
    python计算均值方差
    Linux shell一行流编程实践
    where are you from
    dinner vs supper
    Python格式化输出
    吐槽win8
    HTML学习(六)图像
    HTML学习(五)链接
    HTML学习(四)样式
    URL与String转换
  • 原文地址:https://www.cnblogs.com/jimcsharp/p/2733571.html
Copyright © 2011-2022 走看看