Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在基于rackspace的负载平衡器后面使用自托管web API获取客户端IP_C#_Ssl - Fatal编程技术网

C# 在基于rackspace的负载平衡器后面使用自托管web API获取客户端IP

C# 在基于rackspace的负载平衡器后面使用自托管web API获取客户端IP,c#,ssl,C#,Ssl,我有一个负载平衡API,使用Microsoft自托管Web API,在托管的Rackspace负载平衡器后面通过HTTPS运行。负载平衡器不终止HTTPS,而是将HTTPS直接转发给服务主机。即SSL证书位于处理请求的每台服务器上 如果我绕过负载平衡,我可以使用request.Properties.ContainsKey(RemoteEndpointMessageProperty.Name)正确提取客户端IP 如果我通过负载平衡器,我不会得到客户端IP,我会得到负载平衡器的IP 我一直在搜索和尝

我有一个负载平衡API,使用Microsoft自托管Web API,在托管的Rackspace负载平衡器后面通过HTTPS运行。负载平衡器不终止HTTPS,而是将HTTPS直接转发给服务主机。即SSL证书位于处理请求的每台服务器上

如果我绕过负载平衡,我可以使用request.Properties.ContainsKey(RemoteEndpointMessageProperty.Name)正确提取客户端IP

如果我通过负载平衡器,我不会得到客户端IP,我会得到负载平衡器的IP

我一直在搜索和尝试各种方法,以获得实际的客户端IP,但没有结果。我在调试时查看了请求的属性列表,认为在某个地方一定有对原始客户端IP的引用。还是没用

对于使用RackSpace Web manager作为负载平衡器,我似乎没有太多的改变

在这种情况下,是否可以提取原始客户机IP,或者在遍历负载平衡器后,这些信息就不存在了

非常感谢


西蒙

我和亚马逊也有同样的问题。检查它发送过来的头,它应该包括包含客户端IP地址的头“X-Forwarded-For”


.

我和亚马逊也有同样的问题。检查它发送过来的头,它应该包括包含客户端IP地址的头“X-Forwarded-For”


.

使用未被托管负载平衡器终止的HTTPS意味着它无法向加密流中添加任何内容。这意味着负载平衡器无法将原始IP传递给web服务器本身。

使用未被托管负载平衡器终止的HTTPS意味着它无法向加密流中添加任何内容。这意味着负载平衡器无法将原始IP传递给web服务器本身。

谢谢您的回复。使用自托管WebAPI时“X-Forwarded-For”是否可用?我查看了请求。标题,但未能看到“X-Forwarded-For”谢谢您的答复。使用自托管WebAPI时“X-Forwarded-For”是否可用?我查看了请求。标题,但未能看到“X-Forwarded-For”