【问题标题】:how to get the user's ip address on web server?如何在Web服务器上获取用户的IP地址?
【发布时间】:2013-06-17 10:53:26
【问题描述】:

我在将用户的 IP 地址输入 Web 服务器时遇到问题。 我正在使用此代码..

//To get the local IP address 
            string sHostName = Dns.GetHostName();
            IPHostEntry ipE = Dns.GetHostByName(sHostName);
            IPAddress[] IpA = ipE.AddressList;
            for (int i = 0; i < IpA.Length; i++)
            {
                Console.WriteLine("IP Address {0}: {1} ", i, IpA[i].ToString());
                string IPAddress= IpA[i].ToString();//ip;// IPAddress;// strIPAddress;
            }

因此,我将用户 IP 地址准确地输入到本地主机中,但是当我将网站上传到 Web 服务器时,所有用户的 IP 地址都与服务器 IP 地址相同......请大家帮帮我。

【问题讨论】:

    标签: c# asp.net


    【解决方案1】:

    该代码将为您获取服务器的 IP 地址。

    您可以使用此属性访问用户的 IP 地址:Request.UserHostAddress

    【讨论】:

    • string IPAddress=Request.UserHostAddress; 您可以在您当前在示例中使用代码块的同一位置使用它。如果这不起作用,请告诉我们您正在使用的当前代码的位置。
    • 就是服务器的IP地址。看看这篇文章客户端ipc-sharpcorner.com/blogs/…
    【解决方案2】:

    获取用户IP地址

    Request.ServerVariables("REMOTE_ADDR")
    or
    Request.UserHostAddress
    

    要获取机器的 IP 地址而不是代理,请使用以下代码

    Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
    

    此链接对您有更多帮助..

    http://www.codeproject.com/Questions/260872/How-to-get-client-IP-in-asp-net-Csharp

    【讨论】:

    • 在Page_Load或任何Event函数中获取Request的时候。
    【解决方案3】:

    您使用的代码仅适用于 Windows 应用程序(客户端服务器架构) 但是要在 Web 应用程序中获取用户 IP 地址,您需要使用

    Request.UserHostAddress
    

    【讨论】:

      【解决方案4】:

      无论你多么努力,你只能使用 Asp.Net 中的服务器端代码获取服务器 IP。但是本文中介绍的方法将让你使用 javascript 访问客户端 IP。参考这个 https://www.c-sharpcorner.com/blogs/getting-client-ip-address-or-local-ip-address-in-javascript

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-01-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多