+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 پاسخ 770 بازدید
0 امتیاز
1 پاسخ 7.9هزار بازدید
+1 امتیاز
1 پاسخ 699 بازدید
+1 امتیاز
1 پاسخ 786 بازدید
0 امتیاز
1 پاسخ 375 بازدید
+1 امتیاز
1 پاسخ 17.2هزار بازدید
0 امتیاز
2 پاسخ 559 بازدید
0 امتیاز
1 پاسخ 1.2هزار بازدید
...