环境:JBoss EAP 6.x
测试中发现 web url 中包含 / (%2F) 或 / (%5C)会导致 400 error。
比如:
(1)https://e.m3.lab/ocfs/cashappoint/cashaptOne.do%5C?lgFlg=1&type=
(2)https://e.m3.lab/ocfs/home%2Fpage.do
解决方法:
修改standalone.conf文件,
在 JAVA_OPTS="$JAVA_OPTS -Djboss.modules.policy-permissions=true” 这一行后增加以下两行:
JAVA_OPTS="$JAVA_OPTS -Dorg.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true"
JAVA_OPTS="$JAVA_OPTS -Dorg.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASH=true”
完整的JAVA_OPS设置如下:
if [ "x$JAVA_OPTS" = "x" ]; then
JAVA_OPTS="-Xms1303m -Xmx1303m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true"
JAVA_OPTS="$JAVA_OPTS -Djboss.modules.system.pkgs=$JBOSS_MODULES_SYSTEM_PKGS -Djava.awt.headless=true"
JAVA_OPTS="$JAVA_OPTS -Djboss.modules.policy-permissions=true"
JAVA_OPTS="$JAVA_OPTS -Dorg.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true"
JAVA_OPTS="$JAVA_OPTS -Dorg.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASH=true"
参考文献:
1. http://stackoverflow.com/questions/4069002/receive-an-http-400-error-if-2f-is-part-of-the-get-url-in-jboss
2. https://rhn.redhat.com/errata/RHSA-2007-0360.html
测试中发现 web url 中包含 / (%2F) 或 / (%5C)会导致 400 error。
比如:
(1)https://e.m3.lab/ocfs/cashappoint/cashaptOne.do%5C?lgFlg=1&type=
(2)https://e.m3.lab/ocfs/home%2Fpage.do
解决方法:
修改standalone.conf文件,
在 JAVA_OPTS="$JAVA_OPTS -Djboss.modules.policy-permissions=true” 这一行后增加以下两行:
JAVA_OPTS="$JAVA_OPTS -Dorg.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true"
JAVA_OPTS="$JAVA_OPTS -Dorg.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASH=true”
完整的JAVA_OPS设置如下:
if [ "x$JAVA_OPTS" = "x" ]; then
JAVA_OPTS="-Xms1303m -Xmx1303m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true"
JAVA_OPTS="$JAVA_OPTS -Djboss.modules.system.pkgs=$JBOSS_MODULES_SYSTEM_PKGS -Djava.awt.headless=true"
JAVA_OPTS="$JAVA_OPTS -Djboss.modules.policy-permissions=true"
JAVA_OPTS="$JAVA_OPTS -Dorg.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true"
JAVA_OPTS="$JAVA_OPTS -Dorg.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASH=true"
参考文献:
1. http://stackoverflow.com/questions/4069002/receive-an-http-400-error-if-2f-is-part-of-the-get-url-in-jboss
2. https://rhn.redhat.com/errata/RHSA-2007-0360.html
没有评论:
发表评论