在 php 网站的 aspx 页面中抓取 IP 地址

Grabing ip address in aspx page for a php website

我正在尝试使用以下代码获取请求我的网站的客户 IP 地址:

 protected string GetIPAddress()
        {
            System.Web.HttpContext context = System.Web.HttpContext.Current;
            string ipAddress = context.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];

            if (!string.IsNullOrEmpty(ipAddress))
            {
                string[] addresses = ipAddress.Split(',');
                if (addresses.Length != 0)
                {
                    return addresses[0];
                }
            }

            return context.Request.ServerVariables["REMOTE_ADDR"];
        }

我的 c# Web 服务代码中有这个代码,该代码位于我的客户端 Web 服务器代码所在的同一台服务器上(在本例中为 php)。

所以客户端向我驻留在服务器 1 上的 php 网站发出请求。php wesbite 向 c# webservice 请求驻留在服务器 1 上的数据。IP 地址捕获在我的情况始终是我的 php 代码所在的位置。是不是因为在我的情况下它是服务器 1 上发出请求的 php 代码。

我是否应该在我的 php 代码中获取 IP 地址并将其传递到我的 C# Web 服务以登录数据库。 任何建议将不胜感激 谢谢, 阿努拉格

PHP 在服务器端执行,因此当它向 c# web 服务发出请求时,C# web 服务将始终有一个 Request 对象反映正在调用的 PHP 代码它来自同一台服务器。

是的,在这种情况下,您应该阅读 PHP 代码中的 IP 地址。