2015-03-08

Las longitudes máximas de URL

Las longitudes máximas de URL

Publicado por jpluimers en 04/20/2010
Un cliente me preguntó recientemente qué espacio debe reservar para almacenar las direcciones URL en sus DBMS.
La pluralidad en el título del tema es una pista: los distintos sistemas tienen diferentes límites en longitudes de URL.
Pero en primer lugar:

No utilice las direcciones URL largas

Si utiliza mucho URL (ya decir que un coupé de 100 caracteres), entonces por lo general tiene un problema.
En primer lugar: URL corta de son más fáciles de recordar, índice y búsqueda.
Segundo: URL largo de puede plantear problemas. 
Puede ser que su navegador y soporte de servidor de ellos. 
Sin embargo, un usuario podría estar detrás de un proxy de la interceptación (a veces invisibles para usted y su usuario) que impone un límite de URL.

Las longitudes máximas de URL

Stackoverflow tiene un buen tema en longitudes de URL , algunos sitios hicieron investigaciones sobre esto hace un tiempo, y aquí es algo más de información que recogí.
Vamos a empezar con la norma oficial sobre esto:
RFC 2616 (Hypertext Transfer Protocol - HTTP / 1.1) establece en el apartado 3.2.1 que no hay límite para la longitud de un URI (URI es el término oficial para lo que la mayoría de la gente llama una URL).
Se advierte sin embargo sobre más de 255 personajes de URI, porque en aquel entonces (1999!) Algunos clientes mayores y sistemas proxy no apoyan eso.
Luego está el RFC 3986 (localizador uniforme de recursos (URI): Sintaxis genérica) que no impone un límite en la longitud total de la URL, pero indica en el apartado 2.3.3 el nombre de host se limita a 255 caracteres (debido a las limitaciones de DNS) .
Boutell hizo una investigación sobre las longitudes de URL en el 2006 . 
Su recomendación es tener cuidado con más de 2.000 personajes de URL.
ASP FAQ hizo una investigación en 2001 . 
Lo curioso en aquel entonces era que Netscape 4.3 apoyó 8k URLs, pero Netscape 6 sólo se admite 2000 caracteres.
Algunos productos específicos (en parte de Boutell y ASP FAQ, en parte, a partir de mi propia investigación):

General: no hay límite teórico de la longitud URL

Si necesita reservar espacio en su DBMS, que sea grande o ilimitado.

Navegadores

Vamos a empezar con el lado del cliente.

Internet Explorer

Internet Explorer 8.4 tiene una longitud máxima de 2.083 URL personajes, sino un límite práctico de 2.048 caracteres.
Internet Explorer 8 también es compatible con los datos URI , y aquellos se limitan a 32kb de tamaño .
No hay informe de un error en Internet Explorer 6 y 7 al exportar atajos de URL: se están truncados a cerca de 259 caracteres. 
Esto se parece demasiado a la de valor MAX_PATH 260 se describe aquí .

FireFox

FireFox parece no tener límite práctico.
Se deja de mostrar después de 64k caracteres, pero puede servidor de más de 100 mil caracteres. 
Esto vale para FireFox 1.5 hasta la versión actual de Firefox.
Danny Thorpe descubrió la manera dura que el límite interno algunas versiones de Firefox se trata de 40k. 
Ver el comentario que hizo.

WebKit: Chrome, Safari

No pude encontrar ningún límite en Chrome y Safari. Ambos están basados ​​en WebKit y parece tener límites similares como FireFox tiene.

Ópera

Aunque Opera tiene su propio código base, no tienen un límite de longitud de URL práctica, alrededor de 200 mil todavía funciona.

Servidores

Apache

En stackoverflow , la gente ha utilizado la configuración LimitRequestLine para apoyar URL de más de 128 mil caracteres.

Internet Information Server

Para la versión de IIS 6 y 7,  el límite predeterminado es de 16 kilobytes , con un máximo de 16 megabytes.

Sharepoint

SharePoint impone algunos límites adicionales en la parte fija de un URL y algunos explicación es en este hilo del foro Microsoft y éste . 
La porción de cadena de consulta puede ser más grande, pero la parte fija es dinámico.
Lo anterior ling también tiene una referencia a una longitud de dirección URL del inspector que se puede utilizar para SharePoint.

Lotus Notes

Desde la versión 6.5.3 en adelante, la longitud máxima de URL se puede establecer en kilobytes. El valor predeterminado es de 4 kilobytes.
Informa NCT Investigación que las versiones anteriores tienen un límite de 2.048 caracteres (versión 5.0.10 y superiores, incluyendo 6.x hasta 6.5.3), y las versiones siguientes tienen un límite de 1.024 caracteres.

Los motores de búsqueda

SEOmofo hizo una investigación sobre la longitud máxima URL de los motores de búsqueda .
Ambos investigaron la longitud para la indexación de URL y la longitud para la visualización de los resultados de búsqueda.
Su ganador es BING: admite hasta 2047 caracteres.
Google admite hasta 1855 caracteres.

No hay comentarios: