请参阅以下代码:
private string GetUserIPAddress()
{
string User_IPAddress = string.Empty;
string User_IPAddressRange = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
if (string.IsNullOrEmpty(User_IPAddressRange))//without Proxy detection
{
User_IPAddress = Request.ServerVariables["REMOTE_ADDR"];
//or
//Client_IPAddress = Request.UserHostAddress;
//or
User_IPAddress = Request.ServerVariables["REMOTE_HOST"];
}
else////with Proxy detection
{
string[] splitter = { "," };
string[] IP_Array = User_IPAddressRange.Split(splitter,
System.StringSplitOptions.None);
int LatestItem = IP_Array.Length - 1;
User_IPAddress = IP_Array[LatestItem - 1];
//User_IPAddress = IP_Array[0];
}
return User_IPAddress;
}
修改 - >我将内部代码中的问题替换为以下区域!
在以下情况下:
1-
User_IPAddress = Request.ServerVariables["REMOTE_ADDR"];
和
Client_IPAddress = Request.UserHostAddress;
和
User_IPAddress = Request.ServerVariables["REMOTE_HOST"];
低线或中线是其他线的替代线?
你能告诉我们一些关于这些线路的解释吗?
2-
User_IPAddress = IP_Array[LatestItem - 1];
和
User_IPAddress = IP_Array[0];
我应该使用哪一行?
提前致谢
我在这里用正确的格式创建了另一个帖子(如评论所说):
User IP Address , Using Proxy or Not , Some Help