+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 پاسخ 878 بازدید
0 امتیاز
1 پاسخ 7.9هزار بازدید
+1 امتیاز
1 پاسخ 813 بازدید
+1 امتیاز
1 پاسخ 873 بازدید
0 امتیاز
1 پاسخ 386 بازدید
+1 امتیاز
1 پاسخ 17.2هزار بازدید
0 امتیاز
2 پاسخ 582 بازدید
0 امتیاز
1 پاسخ 1.2هزار بازدید
...