Qual è la lunghezza massima di un URL in diversi browser?


4841

Qual è la lunghezza massima di un URL in diversi browser? Differisce tra i browser?

Il protocollo HTTP lo impone?


38
FWIW, per gli utenti Windows, i percorsi del server che superano i 250 caratteri possono causare dolore durante la creazione di URL, ad esempio, vedere HttpContext.Current.Server.MapPath non riesce per nomi di file lunghi su forums.asp.net . linea di fondo: se una restrizione non ti ottiene, un'altra può .
gerryLowry,

21
Da support.microsoft.com/kb/208427 "La lunghezza massima dell'URL è di 2.083 caratteri in Internet Explorer"
gavenkoa,

9
Posso chiederti perché hai dovuto saperlo? Cioè qual è il caso d'uso per avere un URL lungo?
o0 '.

17
@Lohoris: se un modulo utilizza getanziché anziché post, la creazione di segnalibri per la pagina raggiunta dal modulo compilato acquisirà le informazioni immesse. In alcuni casi, ciò può essere negativo, ma in altri casi può essere utile. Affinché funzioni, tuttavia, il browser deve essere in grado di gestire un URL contenente tutte le informazioni.
supercat

4
@Lohoris Quando scriviamo pagine per generare report abbiamo utilizzato un modulo di criteri. È utile su alcuni rapporti essere in grado di inviare l'URL via e-mail a qualcuno con i criteri integrati. A seconda del rapporto che a volte siamo costretti a utilizzare posto i criteri vengono troncati. Solo un altro caso d'uso.
buzzsawddog,

Risposte:


4957

Risposta breve - limite di fatto di 2000 caratteri

Se mantieni gli URL con meno di 2000 caratteri, funzioneranno praticamente in qualsiasi combinazione di software client e server.

Se stai prendendo di mira determinati browser, vedi sotto per maggiori dettagli limiti specifici.

Risposta più lunga: in primo luogo, gli standard ...

Nella sezione 3.2.1 di RFC 2616 (Hypertext Transfer Protocol HTTP / 1.1)

Il protocollo HTTP non pone alcun limite a priori sulla lunghezza di un URI. I server DEVONO essere in grado di gestire l'URI di qualsiasi risorsa che servono e DOVREBBE essere in grado di gestire URI di lunghezza illimitata se forniscono moduli basati su GET che potrebbero generare tali URI. Un server DOVREBBE restituire lo stato 414 (Request-URI Too Long) se un URI è più lungo di quello che il server è in grado di gestire (vedere la sezione 10.4.15).

Quel RFC è stato obsoleto da RFC7230, che è un aggiornamento della specifica HTTP / 1.1. Contiene un linguaggio simile, ma continua anche a suggerire questo:

Nella pratica si trovano varie limitazioni ad hoc sulla lunghezza della linea di richiesta. È RACCOMANDATO che tutti i mittenti e i destinatari HTTP supportino almeno una lunghezza della riga di richiesta di 8000 ottetti.

... e la realtà

Questo è ciò che dicono gli standard . Per la realtà , c'era un articolo su boutell.com (il link va al backup di Internet Archive) che parlava delle implementazioni di singoli browser e server. La sintesi è:

Gli URL estremamente lunghi di solito sono un errore. Gli URL di oltre 2.000 caratteri non funzioneranno nei browser Web più diffusi. Non utilizzarli se intendi che il tuo sito funzioni per la maggior parte degli utenti di Internet.

(Nota: questa è una citazione da un articolo scritto nel 2006 , ma nel 2015 in calo i mezzi di utilizzo di IE che gli URL più lunghi fanno il lavoro per la maggior parte, tuttavia, IE ha ancora la limitazione ....)

Limitazioni di Internet Explorer ...

La lunghezza massima dell'URL di IE8 è di 2083 caratteri e sembra che IE9 abbia un limite simile .

Ho testato IE10 e la barra degli indirizzi accetta solo 2083 caratteri. Puoi fare clic su un URL più lungo di questo, ma la barra degli indirizzi mostrerà comunque solo 2083 caratteri di questo link.

C'è un bel commento sul blog di IE Internals che si occupa di alcuni retroscena di questo.

Esistono report misti IE11 supporta URL più lunghi - vedere i commenti di seguito. Dato che alcune persone segnalano problemi, il consiglio generale rimane valido.

Motori di ricerca come URL <2048 caratteri ...

Tieni presente che il protocollo Sitemaps , che consente a un sito di informare i motori di ricerca sulle pagine disponibili, ha un limite di 2048 caratteri in un URL. Se intendi utilizzare le Sitemap, è stato deciso un limite per te! (vedi la risposta di Calin-Andrei Burloiu di seguito)

C'è anche qualche ricerca dal 2010 sulla lunghezza massima dell'URL che i motori di ricerca eseguiranno la scansione e l'indicizzazione . Hanno scoperto che il limite era di 2047 caratteri, che sembra alleato alle specifiche del protocollo Sitemap. Tuttavia, hanno anche scoperto che lo strumento SERP di Google non sarebbe in grado di gestire URL più lunghi di 1855 caratteri.

I CDN hanno dei limiti

I CDN impongono anche limiti sulla lunghezza dell'URI e restituiranno un valore 414 Too long requestquando vengono raggiunti questi limiti, ad esempio:

(credito a timrs2998 per aver fornito tali informazioni nei commenti)

Riassunto del browser aggiuntivo

Ho testato quanto segue su un server Apache 2.4 configurato con un LimitRequestLine e LimitRequestFieldSize molto grandi .

Browser     Address bar   document.location
                          or anchor tag
------------------------------------------
Chrome          32779           >64k
Android          8192           >64k
Firefox          >64k           >64k
Safari           >64k           >64k
IE11             2047           5120
Edge 16          2047          10240

Vedi anche questa risposta di Matas Vaitkevicius di seguito.

Queste informazioni sono aggiornate?

Questa è una domanda popolare, e poiché la ricerca originale ha ~ 12 anni proverò a tenerlo aggiornato: a partire da gennaio 2020 , il consiglio è ancora valido. Anche se IE11 potrebbe accettare URL più lunghi, l'ubiquità delle vecchie installazioni IE oltre alle limitazioni del motore di ricerca significa che rimanere sotto i 2000 caratteri è la migliore politica generale.


83
Tieni presente che IE11 non aggiungerà ai segnalibri URL più lunghi di 260 caratteri . Non sono sicuro che Edge abbia la stessa limitazione.
Brian

10
Oggi IE11 riduce il mio URL a 2048 caratteri.
AntiCZ,

2
Domanda originale: "Qual è la lunghezza massima di un URL in diversi browser ". Questo non risponde alla domanda, dà solo per IE. Le persone creano siti Web per scopi diversi, ad esempio strumenti interni a cui IE non accederà MAI.
Skeets,

13
in Chrome nel 2016 sono stato in grado di aprire un URL con 260300 caratteri ASCII utilizzando il comando osx open da un semplice script e ho potuto confermare che tutti i caratteri sono stati passati al server. L'URL nel browser viene troncato a 32791 caratteri, concludendo con ... (% E2% 80% A6% E2% 80% A6)
Rob Dawson,

22
@Paul Dixon È davvero bello vedere persone disposte ad andare al di là di rispondere alle domande su questo sito. Ovviamente le persone stanno mostrando la loro gratitudine con l'attuale conteggio dei voti pari a 3734, ma volevo dire grazie! :)
drognisep il

170

Gli URL più lunghi che ho incontrato sono URL di dati

Esempio di URL dell'immagine dai risultati delle immagini di Google (11747 caratteri)

data:image/jpeg;base64,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

36
Sta parlando del fatto che un jpeg codificato in base64 è tecnicamente un URL, perché è specificato come dati: *. Mentre ha ragione nell'affermare che si tratta di un URL valido, non penso che sia questa la domanda.
Fitblip

54
... o semplicemente incollalo nella barra degli indirizzi.
Gras Double,

108
Questo è un URI non un URL.
mike jones,

65
Poiché un URL di dati contiene il protocollo "data:" e l'identificatore, è tutto ciò che serve per LOCALIZZARE quel "file" (anche se il "Filesystem" è lo spazio di tutti i file possibili). È quindi un URL, che è anche un URI. (Ma sicuramente non "non un URL")
MickLH,

5
@DoubleGras Google Chrome per Mac non mi consente di incollare un URL così a lungo nella mia barra degli indirizzi
Max Nanasy,


153

Ho scritto questo test che continua ad aggiungere 'a'parametri fino a quando il browser non fallisce

Parte C #:

[AcceptVerbs(HttpVerbs.Get)]
public ActionResult ParamTest(string x)
{
    ViewBag.TestLength = 0;
    if (!string.IsNullOrEmpty(x))
    {
        System.IO.File.WriteAllLines("c:/result.txt",
                       new[] {Request.UserAgent, x.Length.ToString()});
        ViewBag.TestLength = x.Length + 1;
    }

    return View();
}

Visualizza:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

<script type="text/javascript">
    $(function() {
        var text = "a";
        for (var i = 0; i < parseInt(@ViewBag.TestLength)-1; i++) {
            text += "a";
        }

        document.location.href = "http://localhost:50766/Home/ParamTest?x=" + text;
    });
</script>

PARTE 1

Su Chrome ho ottenuto:

Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.130 Safari/537.36
2046

Poi è esploso con:

Errore HTTP 404.15 - Non trovato Il modulo di filtro richieste è configurato per rifiutare una richiesta in cui la stringa di query è troppo lunga.

Lo stesso su Internet Explorer 8 e Firefox

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET4.0C; .NET4.0E)
2046

Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0
2046

PARTE 2

Sono passato alla modalità facile e ho aggiunto ulteriori limiti a IISExpress applicationhost.config e alle web.configimpostazioni maxQueryStringLength="32768".

Chrome failed with message 'Bad Request - Request Too Long

HTTP Error 400. The size of the request headers is too long.

dopo 7744 caratteri.

Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.130 Safari/537.36
7744

PARTE 3

aggiunto

<headerLimits>
    <add header="Content-type" sizeLimit="32768" />
</headerLimits>

che non ha aiutato affatto. Alla fine ho deciso di usare il violinista per rimuovere il referrer dall'intestazione.

static function OnBeforeRequest(oSession: Session) {
    if (oSession.url.Contains("localhost:50766")) {
        oSession.RequestHeaders.Remove("Referer");
    }

Che ha fatto bene.

Chrome: arriva a 15613 caratteri. (Immagino sia un limite di 16K per IIS)

E fallì di nuovo con:

<BODY><h2>Bad Request - Request Too Long</h2>
<hr><p>HTTP Error 400. The size of the request headers is too long.</p>


Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.130 Safari/537.36
15613

Firefox:

Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0
15708

Internet Explorer 8 non è riuscito con crash iexplore.exe.

Inserisci qui la descrizione dell'immagine

Dopo 2505

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET4.0C; .NET4.0E)
2505

Emulatore Android

Mozilla/5.0 (Linux; Android 5.1; Android SDK built for x86 Build/LKY45) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/39.0.0.0 Mobile Safari/537.36
7377

Internet Explorer 11

Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C)
4043

Internet Explorer 10

Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/6.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C)
4043

Internet Explorer 9

Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)
4043

Quindi, in effetti, la mia ipotesi di 512 caratteri è in gran parte sbagliata ^ _ ^ Grazie per il test. Non mi occuperò più della lunghezza dei parametri della query.
Gogol,

17
Questa dovrebbe essere la risposta accettata ... la prima in realtà non prevede limiti rigidi per ogni browser, ed è quello che le domande fanno.
GrayedFox

1
Potrebbe valere la pena dare un'occhiata anche a Safari. Safari è l'unico browser che non supporta i download generati dal client. Le soluzioni alternative sono: a) aprire un URI BLOB (un breve URI temporaneo che punta a un BLOB in memoria) in una nuova finestra, b) aprire un URI di dati con codifica base 64 in una nuova finestra (potrebbe essere molto lungo, ma supporta la digitazione mime). Dettagli qui: github.com/eligrey/FileSaver.js/issues/12
Mat Gessel,

@Vaitkevicius sai se uno spazio (% 20) viene conteggiato come un carattere o 3?
Jun711,

1
@Jun dipende da dove ... premi F12 e incolla seguendo la console console.log("%20".length +" "+decodeURI("%20").length)questo dovrebbe spiegarlo
Matas Vaitkevicius

96

Non esiste davvero una lunghezza massima dell'URL universale. La lunghezza massima è determinata solo da ciò che il browser client sceglie di supportare, che varia ampiamente. Il limite di 2.083 è presente solo in Internet Explorer (tutte le versioni fino alla 7.0). La lunghezza massima in Firefox e Safari sembra essere illimitata, sebbene l'instabilità si verifichi con URL che raggiungono circa 65.000 caratteri. Opera sembra non avere alcuna lunghezza massima dell'URL e non soffre di instabilità a lunghezze estremamente lunghe.


8
Se l'instabilità è di circa 65k, probabilmente è proprio lì vicino a 65535 (2 ^ 16 - 1). Forse eseguono il looping dei caratteri usando short i? Solo un pensiero. Mi chiedo quale URL abbiano testato per 65k + o_o ;;
Garet Claborn,

5
Questa risposta è forse quella che dovrebbe essere accettata, in quanto fornisce le risposte concrete: 2k per IE, 65k per Safari / Firefox, "altro" per Opera.
eis,

Sono curioso. L'URL 65k è un URI di schema di dati o davvero un URL nel senso classico?
SaAtomic,

81

Su piattaforme Apple (iOS / macOS / tvOS / watchOS), il limite potrebbe essere uno schema URL lungo 2 GB , come visto da questo commento nel codice sorgente di Swift :

// Make sure the URL string isn't too long.
// We're limiting it to 2GB for backwards compatibility with 32-bit executables using NS/CFURL
if ( (urlStringLength > 0) && (urlStringLength <= INT_MAX) )
{
...

Su iOS, ho testato e confermato che è accettato anche un URL lungo oltre 300 MB. Puoi provare un URL così lungo come questo in Objective-C:

NSString *path = [@"a:" stringByPaddingToLength:314572800 withString:@"a" startingAtIndex:0];
NSString *js = [NSString stringWithFormat:@"window.location.href = \"%@\";", path];
[self.webView stringByEvaluatingJavaScriptFromString:js];

E prendi se riesce con:

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
    NSLog(@"length: %@", @(request.URL.absoluteString.length));
    return YES;
}

74
Ti meriti un +1 solo per lo sforzo di provare un URL da 300 MB
Дамян Станчев

3
iOS non è un browser in sé e per sé. Era in Safari per iOS?
Randall,

6
Gli schemi @Randall sono gestiti dal sistema operativo e quindi inviati all'app che li può aprire. Quindi tutte le app su iOS, incluso Safari, possono gestire URI lunghi.
Cœur il

1
Grazie per il chiarimento. Presumibilmente, tuttavia, ciò non impedisce a un'app arbitraria (ad esempio un browser basato su Tor) di introdurre la propria limitazione di lunghezza, giusto?
Randall,

1
@ Richiamo corretto, ma perché qualcuno dovrebbe farlo ...
Xander

70

L' URC RFC (di cui gli URL sono un sottoinsieme) non definisce una lunghezza massima, tuttavia, raccomanda che la parte del nome host dell'URI (se applicabile) non superi 255 caratteri di lunghezza:

I produttori di URI dovrebbero usare nomi conformi alla sintassi DNS, anche quando l'uso del DNS non è immediatamente evidente e dovrebbero limitare questi nomi a non più di 255 caratteri di lunghezza.

Come notato in altri post, tuttavia, alcuni browser hanno una limitazione pratica sulla lunghezza di un URL.


55

La specifica HTTP 1.1 dice:

Gli URI in HTTP possono essere rappresentati in forma assoluta o relativi ad alcuni
URI di base noti [11], a seconda del contesto del loro utilizzo. Le due
forme sono differenziate dal fatto che gli URI assoluti iniziano sempre
con un nome di schema seguito da due punti. Per informazioni definitive sulla
sintassi e sulla semantica degli URL, consultare "Identificatori di risorse uniformi (URI): sintassi e semantica generici", RFC 2396 [42] (che sostituisce le RFC 1738 [4] e RFC 1808 [11]). Questa specifica adotta le definizioni di "riferimento URI", "absoluteURI", "relativeURI", "port",
"host", "abs_path", "rel_path" e "autorità" da quella
specifica.

Il protocollo HTTP non pone alcun limite a priori sulla lunghezza di
un URI. I server DEVONO essere in grado di gestire l'URI di qualsiasi risorsa che servono e DOVREBBERO essere in grado di gestire URI di lunghezza illimitata se forniscono moduli basati su GET che potrebbero generare tali URI. *
Un server DOVREBBE restituire 414 (Request-URI Too Long) stato se un URI è più lungo di quello che il server può gestire (vedere la sezione 10.4.15).

Nota: i server devono essere cauti a seconda della lunghezza dell'URI superiore a 255 byte, poiché alcune implementazioni client o proxy precedenti potrebbero non supportare correttamente tali lunghezze.

Come menzionato da @Brian, i client HTTP (ad es. I browser) potrebbero avere i propri limiti e i server HTTP avranno limiti diversi.


47

Il supporto Microsoft dice "La lunghezza massima dell'URL è di 2.083 caratteri in Internet Explorer".

IE ha problemi con URL più lunghi di così. Firefox sembra funzionare bene con> 4k caratteri.


39

In URL come UI Jakob Nielsen consiglia:

l'interfaccia sociale al Web si basa sull'e-mail quando gli utenti vogliono consigliare le pagine Web tra loro e l'e-mail è il secondo modo più comune in cui gli utenti accedono a nuovi siti (i motori di ricerca sono i più comuni): assicurati che tutti gli URL sul tuo il sito ha una lunghezza inferiore a 78 caratteri in modo da non essere racchiuso in un feed di riga.

Questo non è il massimo, ma lo considero un massimo pratico se si desidera condividere l'URL.


3
Mi chiedo da dove viene "78"? Forse quell'articolo originale del 1999 è stato scritto partendo dal presupposto che le persone leggono la loro e-mail nelle finestre dei terminali 80x24? Comunque, un buon consiglio!
Jon Schneider,

3
Bene. Le schede perforate IBM erano anche 80 colonne. Con due personaggi ripresi da un ritorno a capo e un feed di riga ottieni 78.
Paul Morgan,

1
Haha. :-) In realtà stavo considerando di fare riferimento ai monitor CGA 80x25 dell'era del 1981 nel mio commento, ma sei arrivato ancora più indietro! ... Non ero in giro per l'era delle schede perforate, ma erano di 80 byte o solo 80 bit?
Jon Schneider,

1
Non esattamente un byte (8 bit). Codificava un carattere in ogni colonna.
Paul Morgan,

3
@JonSchneider - 78 è abbastanza specifico e può riguardare la leggibilità del testo (dal punto di vista dell'usabilità dato lo sfondo di Nielsen), che è il migliore tra 50-60 e un massimo di 75 .
Jay Rainey,

36

Il protocollo Sitemaps , che consente ai webmaster di informare i motori di ricerca sulle pagine dei loro siti (utilizzate anche da Google in Strumenti per i Webmaster), supporta URL con meno di 2048 caratteri. Pertanto, se hai intenzione di utilizzare questa funzione per l'ottimizzazione dei motori di ricerca, tieni conto di ciò.


Questo è un po 'confuso. Protocolli Sitemap "supporta URL con meno di 2048 caratteri". Immaginavo che un sito come example.com avrebbe funzionato. Penso che questa domanda riguardi più il massimo?
HoldOffHunger,

19

I servizi di reportistica ASP.NET 2 e SQL Server 2005 hanno un limite di 2028. L'ho scoperto nel modo più difficile, in cui il mio generatore di URL dinamico non avrebbe passato alcuni parametri a un report oltre quel punto. Questo era sotto Internet Explorer 8.


18

Perché il limite di Internet Explorer è solo 2K mentre IIS ha un limite di 16K? Non penso abbia senso.

Quindi voglio iniziare un esperimento sui limiti di dimensione dell'URL della richiesta Ajax.

Ho impostato maxHttpHeaderSize del mio connettore Tomcat HTTP = "1048576". E preparato un URL molto lungo.

Quindi invio una richiesta con l'URL lungo come il seguente:

var url="/ajax/url-length.jsp";
jQuery.ajax(url,{data:{q:"0".repeat(1048000-url.length-4)}});

rapporti jQuery eseguiti. Tomcat segnala che l'URL richiesto è 1048015 byte. È stato testato con Chrome 50 e Internet Explorer 11.

Pertanto, i browser Web non troncano o limitano intenzionalmente l'URL durante l'invio di richieste Ajax.


4
La variazione tra Internet Explorer e IIS ha senso se si considera che non tutte le richieste a un server Web vengono effettuate tramite un browser.
TroySteven,

15

La direttiva della linea di richiesta limite imposta la lunghezza massima di un URL. Per impostazione predefinita, è impostato su 8190, il che offre molto spazio. Tuttavia, altri server e alcuni browser limitano ulteriormente la lunghezza.

Poiché tutti i parametri vengono passati sulla riga dell'URL, gli elementi che erano nella password dei campi nascosti verranno ovviamente visualizzati nell'URL. Nessuno dei due dispositivi mobili dovrebbe essere utilizzato per misure di sicurezza reali e dovrebbe essere considerato nella migliore delle ipotesi sicurezza estetica.


11

Ho esperienza con SharePoint 2007, 2010 e esiste un limite dell'URL di lunghezza che puoi creare dal lato server in questo caso SharePoint, quindi dipende principalmente da 1) il client (browser, versione e sistema operativo) e 2) la tecnologia server, IIS, Apache, ecc.


1
Poiché SharePoint espone gli URL Web come percorsi di file, viene eseguito un limite separato: il limite di lunghezza del percorso del file di Windows di 260 caratteri (o 248 caratteri quando si utilizza un'API). Per maggiori dettagli su questo limite, controllare la sezione "massima lunghezza del percorso Limitazione" qui: msdn.microsoft.com/en-us/library/aa365247(VS.85).aspx
Thriggle

10

Sembra che Chrome almeno abbia alzato questo limite. Ho incollato 20.000 caratteri nel bookmarklet e ci sono voluti.


1

Secondo le specifiche HTTP, non c'è limite alla lunghezza di un URL. Mantieni i tuoi URL al di sotto di 2048 caratteri; questo assicurerà che gli URL funzionino in tutte le configurazioni client e server. Inoltre, i motori di ricerca come gli URL rimangono al di sotto di circa 2000 caratteri.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.