話不多說,請看代碼:
1
2
3
4
5
|
string requestClientIpAddress = HttpContext.Current.Request.ServerVariables[ "HTTP_X_FORWARDED_FOR" ]; if ( string .IsNullOrEmpty(requestClientIpAddress)) requestClientIpAddress = HttpContext.Current.Request.ServerVariables[ "REMOTE_ADDR" ]; if ( string .IsNullOrEmpty(requestClientIpAddress)) requestClientIpAddress = HttpContext.Current.Request.UserHostAddress; |
經過測試 存在負載均衡的時候 ,HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] 取出的是真實的客戶端 IP地址 ,而HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"] 和 HttpContext.Current.Request.UserHostAddress 取出的是被分配的保留地址
以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持服務器之家!
原文鏈接:http://www.cnblogs.com/LJQ-Jason/archive/2017/02/27/6475991.html