49 votos

¿Cuál es la máxima longitud de la dirección URL en Tomcat?

Y es configurable? Puedo configurar Tomcat para que una dirección URL, por ejemplo, con 200K de consulta de parámetros se atraviesa con éxito a la contenida servlet?

Sí, yo sé que uno debe usar un POST cuando usted tiene un montón de datos; que la una menos agradable opción en este caso en particular. El contenido de la aplicación (un motor de búsqueda) espera una solicitud GET para realizar una búsqueda.

70voto

Michael Gundlach Puntos 616

Usted puede editar tomcat/conf/servidor.xml HTTP/1.1 Conector de entrada, y agregar un maxHttpHeaderSize="65536" para aumentar desde el máximo predeterminado de 8K o así, a 64 kb. Me imagino que usted podría hasta este número tan alto como sea necesario, pero de 64 kb suficiente para mis necesidades en el momento en que yo no lo he probado.

<Connector port="8080" maxHttpHeaderSize="65536" protocol="HTTP/1.1" ... />

6voto

AlberT Puntos 6591

La longitud de una solicitud HTTP GET no se aplica por RFC2616, como Microsoft informes para su IE máx longitud de la página de soporte.

Así, el máximo de OBTENER la longitud de un cliente (navegador) relacionados con el tema. Si tu aplicación es utilizada por personas que pueden forzar el uso de un navegador en concreto, a continuación, puede simplemente encontrar cuál es la longitud de este navegador de apoyo.

En todo caso te sugiero un vistazo a la Wikypedia página sobre aquellos navegador relacionados a problemas en la cadena de Consulta (la parte de la solicitud de traer los parámetros del lado del servidor de aplicaciones, el uno tras el "?" eventualmente presentes en una solicitud.

Por supuesto, tal vez tomcat va a poner un límite demasiado, en el lado del servidor. RFC dice:

Los servidores DEBEN ser capaces de manejar la URI de cualquiera de los recursos que sirven, y DEBE ser capaz de manejar las URIs de unbounded longitud si se proporcionan OBTENER los formularios basados en la que podría generar este tipo de Uri. Un el servidor DEBE devolver 414 (URI de la Solicitud Demasiado Largo) estado si un URI es más lo que el servidor puede manejar (ver sección 10.4.15).

así que usted puede probar fácilmente si Tomcat tiene un límite y descubrir lo que este límite es simplemente el uso de las diferentes solicitudes de partida con una muy larga de dar el error y se va por la mitad. A continuación, utilice interseccion método rápido encontrar el valor exacto.

1voto

Thalaiselvam Puntos 11

Puede cambiar la configuración en Tamcat servidor ( ..\Tomcat 6.0\conf\server.xml )

< Connector port="8983" maxHttpHeaderSize="100000" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

Espero que le ayuda...

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X