Longitud máxima de dirección URL

17 Dic 2010

macro pixels url cliche

Haciendo algunas pruebas con un proyecto reciente, me encontré con esta pregunta: ¿cúal es la longitud máxima de una url en cada navegador?

Básicamente me preocupaba por IE6, ya que recordaba que tenía un límite pequeño.

Después de investigar un poco, llegué a un número mágico de caracteres del que es preferible no pasar:

2.083 caracteres en total para IE6.

Intentar resolver una dirección más larga mostrará un claro mensaje de error.

Para el resto de navegadores, la cifra es mucho más alta, no siendo necesario siquiera preocuparse por ello. De hecho, el límite de IE6 es lo suficientemente alto como para despreocuparnos de cuántos parámetros pasemos a nuestra página.

Un detalle interesante es que este límite, además de en el navegador, también está presente en el servidor. Así por ejemplo, tenemos las siguientes limitaciones:

  • Apache soporta por defecto alrededor de 4.000 caracteres, siendo esta opción configurable.
  • ISS soporta 16.384 caracteres por defecto, curiosamente una longitud mayor que su propio navegador. Este parámetro es también configurable.

En caso de sobrepasar estos límites, el servidor devuelve un error y no resuelve la dirección, por lo que tampoco comprometemos la seguridad del sitio.

En definitiva, atendiendo siempre a que debemos jugar con la variable más pequeña para curarnos en salud, nos tenemos que quedar con los 2.083 caracteres del IE6.

Imagen: chrisdlugosz

Más:
Esta entrada fue publicada en Sin categoría. Guarda el enlace permanente.

Solo un marciano comentando!

  1. fcodiaz

    En definitivo creo que enviar tantos parametros via GET es mala idea U.u…. para ello esta POST donde practicamente no tenemos un limite

    yo prefiero siempre usar POST para el envio de parametro.. exeptuando las variables que me dicen a donde hay que ir y recursos que quiero que el explorador recuerde, creo que es mejor tener una URL pequeña y descriptiva y estar lejos de llegar a ese limite

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *