diff --git a/apps/routerconsole/jsp/config.jsp b/apps/routerconsole/jsp/config.jsp
index 9cc6f81a4d5cefae40df18de368297884dba2271..7307dc355c8f80d83390837acd68976ed4033a7e 100644
--- a/apps/routerconsole/jsp/config.jsp
+++ b/apps/routerconsole/jsp/config.jsp
@@ -9,7 +9,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/configadvanced.jsp b/apps/routerconsole/jsp/configadvanced.jsp
index 27405c0c4c0ce1d8691cd62ff7a2769e1ceacae3..d684ddccc2da9c2f26078a6fde548dd8eb711929 100644
--- a/apps/routerconsole/jsp/configadvanced.jsp
+++ b/apps/routerconsole/jsp/configadvanced.jsp
@@ -9,7 +9,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/configclients.jsp b/apps/routerconsole/jsp/configclients.jsp
index 0662afffefe199af3e3bee6bee32fbe7e56139f4..397773e4ba92586222f19317a7e06bccca181d07 100644
--- a/apps/routerconsole/jsp/configclients.jsp
+++ b/apps/routerconsole/jsp/configclients.jsp
@@ -14,7 +14,7 @@ input.default { width: 1px; height: 1px; visibility: hidden; }
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/confighome.jsp b/apps/routerconsole/jsp/confighome.jsp
index 5ddf6f20050d4dbf37ec247fea86e05cb6fa115c..7a4379f4752791160ed5c382dc80e838c84d588a 100644
--- a/apps/routerconsole/jsp/confighome.jsp
+++ b/apps/routerconsole/jsp/confighome.jsp
@@ -15,7 +15,7 @@ input.default {
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/configkeyring.jsp b/apps/routerconsole/jsp/configkeyring.jsp
index 2719fe3335dcca696296755492745d90a1673ad7..612e6c5901b4791dd5044ad60241f7fac3faa7ac 100644
--- a/apps/routerconsole/jsp/configkeyring.jsp
+++ b/apps/routerconsole/jsp/configkeyring.jsp
@@ -8,7 +8,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/configlogging.jsp b/apps/routerconsole/jsp/configlogging.jsp
index d00d34321e371d38238662c3de2414d5457c5127..77da61dc8b5b7d1cd3d619077e0e9fc649269ca7 100644
--- a/apps/routerconsole/jsp/configlogging.jsp
+++ b/apps/routerconsole/jsp/configlogging.jsp
@@ -9,7 +9,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/confignet.jsp b/apps/routerconsole/jsp/confignet.jsp
index e85c9e6df9f4d7d290f6586d09a7dc1efd5a92e9..134460eb41078328d4f4f016c9628a83ee562b64 100644
--- a/apps/routerconsole/jsp/confignet.jsp
+++ b/apps/routerconsole/jsp/confignet.jsp
@@ -8,7 +8,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/configpeer.jsp b/apps/routerconsole/jsp/configpeer.jsp
index 0f9b98a21b469c56b6eceac144e7e99611295fbb..3e98487b8cf1466b2db4b42f6851e7101924c93f 100644
--- a/apps/routerconsole/jsp/configpeer.jsp
+++ b/apps/routerconsole/jsp/configpeer.jsp
@@ -8,7 +8,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/configreseed.jsp b/apps/routerconsole/jsp/configreseed.jsp
index c0f3faaaedb2fb344ca84674bf40cdb72a3a715e..88c8f46a1322df08cc82efd0572928fc1ea1a76d 100644
--- a/apps/routerconsole/jsp/configreseed.jsp
+++ b/apps/routerconsole/jsp/configreseed.jsp
@@ -8,7 +8,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/configservice.jsp b/apps/routerconsole/jsp/configservice.jsp
index 21ae39a6bfc98cf4159ef1704734eba1bb3f0f32..7a5ea2e33025ab12f6aeee2f597ed6e98f810c4e 100644
--- a/apps/routerconsole/jsp/configservice.jsp
+++ b/apps/routerconsole/jsp/configservice.jsp
@@ -8,7 +8,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/configsidebar.jsp b/apps/routerconsole/jsp/configsidebar.jsp
index dcbf1fe1e6be156ff2ae73091ee4afea6e66e3da..5fece05585998449e36b54d94c0f8f59cd308e96 100644
--- a/apps/routerconsole/jsp/configsidebar.jsp
+++ b/apps/routerconsole/jsp/configsidebar.jsp
@@ -15,7 +15,7 @@ input.default {
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/configstats.jsp b/apps/routerconsole/jsp/configstats.jsp
index 6d75d673cc0a77440c1e79cfe90a1800e6feb3b3..9ba18c3d9426c84ab47f47bcdcf3d6afdc725428 100644
--- a/apps/routerconsole/jsp/configstats.jsp
+++ b/apps/routerconsole/jsp/configstats.jsp
@@ -9,7 +9,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 <script type="text/javascript">
diff --git a/apps/routerconsole/jsp/configtunnels.jsp b/apps/routerconsole/jsp/configtunnels.jsp
index fb6a06291d7c84675b404ff529d824c2afd74d53..0c7c9e82264a4494e6d4344e9665eb04a7cc8a73 100644
--- a/apps/routerconsole/jsp/configtunnels.jsp
+++ b/apps/routerconsole/jsp/configtunnels.jsp
@@ -8,7 +8,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/configui.jsp b/apps/routerconsole/jsp/configui.jsp
index c5b8c4d81aa726bfb89ce72b862acc4334c7de97..886151087c30fb5ea55e599df6daa4734a46fa79 100644
--- a/apps/routerconsole/jsp/configui.jsp
+++ b/apps/routerconsole/jsp/configui.jsp
@@ -9,7 +9,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/configupdate.jsp b/apps/routerconsole/jsp/configupdate.jsp
index dafac8d45ef24694401d36b67a0b130e6cb4fee0..2cad3ec6a73f42575a5a6b32347929e9295512a1 100644
--- a/apps/routerconsole/jsp/configupdate.jsp
+++ b/apps/routerconsole/jsp/configupdate.jsp
@@ -9,7 +9,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/console.jsp b/apps/routerconsole/jsp/console.jsp
index b9688aa0ec588e98d1a11bb1877162f5ce723ea8..8f2fa2e0b240e2ab688aa4879d0d006a3a0902e3 100644
--- a/apps/routerconsole/jsp/console.jsp
+++ b/apps/routerconsole/jsp/console.jsp
@@ -9,7 +9,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/debug.jsp b/apps/routerconsole/jsp/debug.jsp
index 191d73e1859ad1a74af8ffc3eb0d978876f7a005..609308fd56825011d9dd57867f1283a5beda59ce 100644
--- a/apps/routerconsole/jsp/debug.jsp
+++ b/apps/routerconsole/jsp/debug.jsp
@@ -12,7 +12,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/error.jsp b/apps/routerconsole/jsp/error.jsp
index 95218cc5351705ff85b12898bf787a7c6504b987..2c1913080faf7a1fdcaad1e6023e098e54b456e4 100644
--- a/apps/routerconsole/jsp/error.jsp
+++ b/apps/routerconsole/jsp/error.jsp
@@ -19,7 +19,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/graph.jsp b/apps/routerconsole/jsp/graph.jsp
index 4be37b33940be528ce8888bca83e07dd67003c51..487f91fd67868b23ec2996b0685818acff8f3de9 100644
--- a/apps/routerconsole/jsp/graph.jsp
+++ b/apps/routerconsole/jsp/graph.jsp
@@ -15,7 +15,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/graphs.jsp b/apps/routerconsole/jsp/graphs.jsp
index e3287e98c8ac88478c580fffa3bfa98486f5b4c2..e78720012791692a34dd24e4b8476099409742d7 100644
--- a/apps/routerconsole/jsp/graphs.jsp
+++ b/apps/routerconsole/jsp/graphs.jsp
@@ -22,7 +22,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/help.jsp b/apps/routerconsole/jsp/help.jsp
index 8c68cb5e9a921e735897d646c0a88582146fc74b..49d138c277d558bc0f1235b84107319aa2e4c11b 100644
--- a/apps/routerconsole/jsp/help.jsp
+++ b/apps/routerconsole/jsp/help.jsp
@@ -12,7 +12,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/help_ar.jsp b/apps/routerconsole/jsp/help_ar.jsp
index 7e058678faa71f21150f3d073f7738a9788c2734..b63f509ca18de55e36b22930495c55a32c90f2e9 100644
--- a/apps/routerconsole/jsp/help_ar.jsp
+++ b/apps/routerconsole/jsp/help_ar.jsp
@@ -12,7 +12,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/help_fr.jsp b/apps/routerconsole/jsp/help_fr.jsp
index 01b000ac9b38aa8ee4e62ccba6a41f2e766accaf..56167fe0ee540bab60558f94ad4b795e931f7d4b 100644
--- a/apps/routerconsole/jsp/help_fr.jsp
+++ b/apps/routerconsole/jsp/help_fr.jsp
@@ -12,7 +12,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/help_nl.jsp b/apps/routerconsole/jsp/help_nl.jsp
index 20defacaa9f12107a5c4ddd471e143d293969697..9db466eb1b01a470fcf8c147c3c49de7db60d551 100644
--- a/apps/routerconsole/jsp/help_nl.jsp
+++ b/apps/routerconsole/jsp/help_nl.jsp
@@ -12,7 +12,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/help_ru.jsp b/apps/routerconsole/jsp/help_ru.jsp
index 55ea530c7dd585636c1fc0a9286de85e82f587f3..7c49a5fb6e3fcb60a7c040d091a7aa1a4d3eda8f 100644
--- a/apps/routerconsole/jsp/help_ru.jsp
+++ b/apps/routerconsole/jsp/help_ru.jsp
@@ -12,7 +12,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/home.jsp b/apps/routerconsole/jsp/home.jsp
index 3bd3451519bdb994d78a6a3a8761099d54bb4601..8dbaf0bd87c3102e3c4b19939ac2be6b687fab97 100644
--- a/apps/routerconsole/jsp/home.jsp
+++ b/apps/routerconsole/jsp/home.jsp
@@ -7,7 +7,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/i2ptunnelmgr.jsp b/apps/routerconsole/jsp/i2ptunnelmgr.jsp
index 6ea41239addd2cf2828c2562c779ae2f5756c113..58c476116c951fd46000ceb59d189657128e7fa6 100644
--- a/apps/routerconsole/jsp/i2ptunnelmgr.jsp
+++ b/apps/routerconsole/jsp/i2ptunnelmgr.jsp
@@ -19,7 +19,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
   function resizeFrame(f) { f.style.height = f.contentWindow.document.body.scrollHeight + "px"; }
   function init() {
diff --git a/apps/routerconsole/jsp/jars.jsp b/apps/routerconsole/jsp/jars.jsp
index dacd3d93fa29491d39e65fe4170ed131a26056d7..7da2e86900b95aae9d6f56c7cb2e370d30b8dd0a 100644
--- a/apps/routerconsole/jsp/jars.jsp
+++ b/apps/routerconsole/jsp/jars.jsp
@@ -8,7 +8,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/jobs.jsp b/apps/routerconsole/jsp/jobs.jsp
index 247fa298ef6f82ffd95760c56d570839eb4bacb4..c668951b9609ea8315b9b04279477ba74727c547 100644
--- a/apps/routerconsole/jsp/jobs.jsp
+++ b/apps/routerconsole/jsp/jobs.jsp
@@ -9,7 +9,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/logs.jsp b/apps/routerconsole/jsp/logs.jsp
index ed4b5c12163b419d9e5830f45d77e2b70a2f83e6..bd6d8572218f9cfc96079487de79ba0b402974dc 100644
--- a/apps/routerconsole/jsp/logs.jsp
+++ b/apps/routerconsole/jsp/logs.jsp
@@ -8,7 +8,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/netdb.jsp b/apps/routerconsole/jsp/netdb.jsp
index af661c20433ec8f32615051cd2c1ef739756b689..ba2185062f4f112a89db3cb44d0b8fcb96f292a5 100644
--- a/apps/routerconsole/jsp/netdb.jsp
+++ b/apps/routerconsole/jsp/netdb.jsp
@@ -9,7 +9,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/nowebapp.jsp b/apps/routerconsole/jsp/nowebapp.jsp
index c18b8e41afbfe84d705537531db63c431e90028b..b61808a9deb915c6a6476f73ecf6631426465662 100644
--- a/apps/routerconsole/jsp/nowebapp.jsp
+++ b/apps/routerconsole/jsp/nowebapp.jsp
@@ -10,7 +10,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/oldconsole.jsp b/apps/routerconsole/jsp/oldconsole.jsp
index cb0c186630210268e0df3681359039367bbc7c14..825388a7aad3c300514fd4d466b688f85e38d63b 100644
--- a/apps/routerconsole/jsp/oldconsole.jsp
+++ b/apps/routerconsole/jsp/oldconsole.jsp
@@ -12,7 +12,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/peers.jsp b/apps/routerconsole/jsp/peers.jsp
index e23e4f73b9eaf08d10a6271c06dc8a2791da7409..934de432b81f2dc1820bf8fe0f9b9fce831d6507 100644
--- a/apps/routerconsole/jsp/peers.jsp
+++ b/apps/routerconsole/jsp/peers.jsp
@@ -9,7 +9,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/profiles.jsp b/apps/routerconsole/jsp/profiles.jsp
index 5f149ec2435120144975b003fbe5c7eb7bbe6adf..f5be72a832d44f7867d66ee1fe2bfae101302606 100644
--- a/apps/routerconsole/jsp/profiles.jsp
+++ b/apps/routerconsole/jsp/profiles.jsp
@@ -9,7 +9,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/stats.jsp b/apps/routerconsole/jsp/stats.jsp
index 5750fae1c168342577f8a6e70508e64b35aa5eb3..b5255775bb35ea5f78cc97901a7fceee0160be0b 100644
--- a/apps/routerconsole/jsp/stats.jsp
+++ b/apps/routerconsole/jsp/stats.jsp
@@ -9,7 +9,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/tunnels.jsp b/apps/routerconsole/jsp/tunnels.jsp
index 332381a95ad33ffb45a4ab425f2c08bfb96a1449..5ccfd0778e834afdc43780043efb78323e91d307 100644
--- a/apps/routerconsole/jsp/tunnels.jsp
+++ b/apps/routerconsole/jsp/tunnels.jsp
@@ -9,7 +9,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/viewprofile.jsp b/apps/routerconsole/jsp/viewprofile.jsp
index 635aafb3489c4d4e95b91e36e2406d4d0d843d1e..96f2e1df45e5fd94aab118a0eee57e6999556cee 100644
--- a/apps/routerconsole/jsp/viewprofile.jsp
+++ b/apps/routerconsole/jsp/viewprofile.jsp
@@ -9,7 +9,7 @@
 <script src="/js/ajax.js" type="text/javascript"></script>
 <script type="text/javascript">
   var failMessage = "<hr><b><%=intl._("Router is down")%><\/b>";
-  function requestAjax1() { ajax("/xhr1.jsp", "xhr", <%=intl.getRefresh()%>000); }
+  function requestAjax1() { ajax("/xhr1.jsp?requestURI=<%=request.getRequestURI()%>", "xhr", <%=intl.getRefresh()%>000); }
   function initAjax() { setTimeout(requestAjax1, <%=intl.getRefresh()%>000);  }
 </script>
 </head><body onload="initAjax()">
diff --git a/apps/routerconsole/jsp/xhr1.jsi b/apps/routerconsole/jsp/xhr1.jsi
index 1362cca1f766e759cdc87d2284628042bcd2d159..d6b9e62eb04cfe1bed4267e9cce69cd78ce100b9 100644
--- a/apps/routerconsole/jsp/xhr1.jsi
+++ b/apps/routerconsole/jsp/xhr1.jsi
@@ -12,8 +12,8 @@
 <jsp:setProperty name="helper" property="consoleNonce" value="<%=request.getParameter(\"consoleNonce\")%>" />
 <%
     String reqURI = request.getRequestURI();
-    if (reqURI != null)
-        reqURI = reqURI.replace("/xhr1.jsp", "/");
+    if (reqURI.contains("/xhr1"))
+        reqURI = request.getParameter("requestURI");
     helper.setRequestURI(reqURI);
 %>
 <% helper.storeWriter(out); %>