有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

JavaAJPURL编码

我对URL编码有问题。当我在浏览器上执行URL时,服务器一次又一次地对其进行编码,但URL已经编码为UTF-8

eg. http://test.com:80/?gotoUrl=http%3A%2F%2Fclosewindow.xyz.com&modal=true

I am getting - https://test.com/?gotoUrl=http%253A%252F%252Fclosewindow.xyz.com&modal=true

我正在HTTPS上运行我的应用程序,并将80上的任何请求重定向到HTTPS安全端口443。只有当我在端口80上发送请求并且服务器将其重定向到安全端口443时,才会出现此问题。如果我在安全端口443上发出请求,则不会发生此问题

下面是我的tomcat配置

<Connector port="8080" 
           protocol="HTTP/1.1" 
           connectionTimeout="5000" 
           compression="on"
           compressionMinSize="128"
           compressableMimeType="text/html,text/xml,text/plain,text/css,text/javascript,text    /json,
                                 application/x-javascript,application/javascript,application/json" 
           enableLookups="false"
           maxPostSize="4096"
           URIEncoding="UTF-8"
       redirectPort="8443"

/>
<Connector  port="8009" 
            protocol="AJP/1.3" 
            URIEncoding="UTF-8"
/>

<Connector
   protocol="HTTP/1.1"
   port="8443" maxThreads="200"
   scheme="https" secure="true" SSLEnabled="true"
   keystoreFile="/path/keystore" keystorePass="password"
   clientAuth="false" sslProtocol="TLS"/>

我的环境就像Apache2。2英寸在前部和tomcat7上。x通过AJP与Apache服务器连接

我深入研究了这个问题,发现问题出在使用iso-8859-1的AJP身上,而tomcat&;Apache工作正常,使用UTF-8编码。在AJP中是否有将编码设置为UTF-8的方法?我正在使用mod_proxy_ajp

提前谢谢。如果能在这方面得到任何帮助,我将不胜感激


共 (1) 个答案

  1. # 1 楼答案

    我建议浏览器正在这样做。Tomcat这样做是没有意义的。Tomcat将进行解码,而不是编码。在浏览器中尝试,完全不进行编码