+1 امتیاز
قبل در برنامه نویسی توسط (922 امتیاز)
برچسب گذاری دوباره قبل توسط

ما یک برنامه تحت وب جاوا توسعه داده ایم که در آن آدرس IP کاربران خود را log می کنیم، در محیط تست این کار به درستی انجام می شود و برای هر کاربر IP آن کاربر ذخیره می شود ولی برروی سرور اصلی فقط یک IP برای تمامی کاربران ذخیره می شود. پس از بررسی متوجه شدیم که آن IP برای یکی از سرورهای load balancer هاست می باشد.

برای بدست آوردن آدرس IP کاربران از کد زیر استفاده می کنیم:

httpRequest.getRemoteAddr();

با تشکر از راهنماییتون.

2 پاسخ

+4 امتیاز
قبل توسط (1.1هزار امتیاز)
انتخاب شده قبل توسط
 
بهترین پاسخ

شما می توانید برای حل مشکلتون از کد زیر استفاده کنید:

String ipAddress = request.getHeader("X-FORWARDED-FOR");  
if (ipAddress == null) {  
    ipAddress = request.getRemoteAddr();  
}
+3 امتیاز
قبل توسط (1.5هزار امتیاز)

برای بدست آوردن آدرس getway  از این کد استفاده کنید

request.getHeader("VIA")

 

سوالات مشابه

+3 امتیاز
2 پاسخ 1.3هزار بازدید
+1 امتیاز
1 پاسخ 947 بازدید
0 امتیاز
1 پاسخ 8.0هزار بازدید
+1 امتیاز
1 پاسخ 882 بازدید
+1 امتیاز
1 پاسخ 942 بازدید
0 امتیاز
1 پاسخ 393 بازدید
+1 امتیاز
1 پاسخ 17.3هزار بازدید
0 امتیاز
2 پاسخ 593 بازدید
0 امتیاز
1 پاسخ 1.2هزار بازدید
...