FWIW, для пользователей Windows, пути к серверам, превышающие 250 символов, могут вызвать горе при создании URL-адресов, например, см. HttpContext.Current.Server.MapPath для длинных имен файлов на forums.asp.net . Итог: если одно ограничение вас не устраивает, другое может .
Могу я спросить, зачем тебе это знать? Т.е. каков вариант использования длинного URL?
о0 '.
17
@Lohoris: Если форма использует, getа не post, тогда добавление в закладки страницы, достигнутой заполненной формой, захватит введенную информацию. В некоторых случаях это может быть плохо, но в других случаях это может быть полезно. Однако, чтобы это работало, браузер должен иметь возможность обрабатывать URL, содержащий всю информацию.
Суперкат
4
@Lohoris Когда мы пишем страницы для создания отчетов, мы использовали форму критериев. В некоторых отчетах полезно иметь возможность отправлять URL-адрес кому-то со встроенными критериями. В зависимости от отчета, который мы иногда вынуждены использовать, postили критерии усекаются. Просто еще один вариант использования.
buzzsawddog
Ответы:
4957
Краткий ответ - фактический лимит в 2000 символов
Если вы держите URL-адреса длиной до 2000 символов, они будут работать практически в любой комбинации клиентского и серверного программного обеспечения.
Если вы ориентируетесь на определенные браузеры, см. Ниже подробности конкретных ограничений.
Более длинный ответ - сначала стандарты ...
RFC 2616 (протокол передачи гипертекста HTTP / 1.1) раздел 3.2.1 говорит
Протокол HTTP не устанавливает каких-либо априорных ограничений на длину URI. Серверы ДОЛЖНЫ иметь возможность обрабатывать URI любого ресурса, который они обслуживают, и ДОЛЖНЫ иметь возможность обрабатывать URI неограниченной длины, если они предоставляют формы на основе GET, которые могут генерировать такие URI. Сервер ДОЛЖЕН вернуть статус 414 (Request-URI Too Long), если URI длиннее, чем может обработать сервер (см. Раздел 10.4.15).
Этот RFC устарел в RFC7230, который является обновлением спецификации HTTP / 1.1. Он содержит похожий язык, но также предлагает следующее:
На практике встречаются различные специальные ограничения на длину строки запроса. РЕКОМЕНДУЕТСЯ, чтобы все отправители и получатели HTTP поддерживали, как минимум, длину строки запроса в 8000 октетов.
... и реальность
Это то, что говорят стандарты . На самом деле на boutell.com была статья (ссылка идет на резервное копирование в Интернет-архив), в которой обсуждалась поддержка отдельных реализаций браузера и сервера. Исполнительное резюме:
Чрезвычайно длинные URL-адреса обычно являются ошибкой. URL-адреса длиной более 2000 символов не будут работать в самых популярных веб-браузерах. Не используйте их, если вы хотите, чтобы ваш сайт работал для большинства пользователей Интернета.
(Примечание: это цитата из статьи , написанной в 2006 году , но в 2015 году снижение означает использование в IE , что более длинные URL , делают работу для большинства Однако, IE все еще имеет ограничение ....)
Я протестировал IE10, и адресная строка будет принимать только 2083 символа. Вы можете щелкнуть URL-адрес, который длиннее этого, но в адресной строке по-прежнему будет отображаться только 2083 символа этой ссылки.
Есть смешанные отчеты IE11 поддерживает более длинные URL-адреса - см. Комментарии ниже. Учитывая, что некоторые люди сообщают о проблемах, общий совет остается в силе.
Поисковые системы, такие как URL <2048 символов ...
Помните, что протокол sitemaps , который позволяет сайту информировать поисковые системы о доступных страницах, имеет ограничение в 2048 символов в URL. Если вы собираетесь использовать файлы Sitemap, для вас определено ограничение! (см. ответ Калина-Андрея Бурлойу ниже)
Также в 2010 году было проведено исследование максимальной длины URL, которую поисковые системы будут сканировать и индексировать . Они обнаружили, что ограничение составляет 2047 символов, что похоже на спецификацию протокола карты сайта. Однако они также обнаружили, что инструмент Google SERP не справляется с URL-адресами длиннее 1855 символов.
CDN имеют ограничения
CDN также накладывают ограничения на длину URI и возвращают a, 414 Too long requestкогда эти пределы достигнуты, например:
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
Смотрите также этот ответ от Матаса Вайткявичюса ниже.
Эта информация актуальна?
Это популярный вопрос, и поскольку первоначальному исследованию было ~ 12 лет, я постараюсь держать его в актуальном состоянии: по состоянию на январь 2020 года этот совет все еще остается в силе. Несмотря на то, что IE11 может принимать более длинные URL-адреса, повсеместность более старых установок IE плюс ограничения поисковой системы означают, что оставаться под 2000 символами - лучшая общая политика.
Оригинальный вопрос: «Какова максимальная длина URL в разных браузерах ». Это не отвечает на вопрос, это только для IE. Люди создают сайты для разных целей, например, для внутренних инструментов, которые НИКОГДА не будут доступны IE.
Скитс
13
в Chrome в 2016 году я смог открыть URL с 260300 символами ascii с помощью команды osx open из простого скрипта и мог подтвердить, что все символы были переданы на сервер. URL-адрес в браузере усекается до 32791 символа, что завершается с ... (% E2% 80% A6% E2% 80% A6)
Роб Доусон
22
@Paul Dixon Очень приятно видеть людей, которые готовы идти дальше и дальше, отвечая на вопросы на этом сайте. Очевидно, что люди выражают свою благодарность с текущим количеством голосов, составляющим 3734, но я хотел бы сказать спасибо! :)
drognisep
170
Самые длинные URL-адреса, с которыми я столкнулся, - это URL-адреса данных.
Пример изображения URL из результатов поиска Google (11747 символов)
Он говорит о том факте, что jpeg в кодировке base64 технически является URL-адресом, потому что он указан в виде данных: *. Хотя он прав, утверждая, что это действительный URL, я не думаю, что это был вопрос.
Fitblip
54
... или просто вставьте его в адресную строку.
Двойной Гра
108
Это URI, а не URL.
Майк Джонс
65
Поскольку URL-адрес данных содержит протокол «data:» и идентификатор, это все, что вам нужно, чтобы найти этот «файл» (даже если «Файловая система» - это пространство всех возможных файлов). Поэтому это URL, который также является URI. (Но определенно не «не URL»)
MickLH
5
@DoubleGras Google Chrome для Mac не позволяет мне вставлять URL-адрес такой длины в мою адресную строку
Макс Нанаси
157
Часто задаваемые вопросы WWW: Какова максимальная длина URL? имеет свой ответ, основанный на эмпирическом тестировании и исследованиях. Короткий ответ: использование более 2048 символов делает Internet Explorer несчастным, и это ограничение, которое вы должны использовать. Смотрите страницу для длинного ответа.
<scriptsrc="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script><scripttype="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>
ЧАСТЬ 1
На Chrome я попал:
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.130 Safari/537.36
2046
Затем он взорвался с:
Ошибка HTTP 404.15 - не найден Модуль фильтрации запросов настроен на отклонение запроса, если строка запроса слишком длинная.
что совсем не помогло. Я наконец решил использовать fiddler для удаления реферера из заголовка.
static function OnBeforeRequest(oSession: Session) {
if (oSession.url.Contains("localhost:50766")) {
oSession.RequestHeaders.Remove("Referer");
}
Который сделал хорошо.
Хром: до 15613 символов. (Я полагаю, это предел 16 КБ для IIS)
И это снова не удалось с:
<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
Fire Fox:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0
15708
Internet Explorer 8 завершился с ошибкой iexplore.exe.
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
Таким образом, мое предположение о 512 символах в основном неверно ^ _ ^ Спасибо за тест. Я никогда не буду заботиться о длине параметра запроса ..
Гоголь
17
Это должен быть принятый ответ ... первый на самом деле не предусматривает жестких ограничений для каждого браузера, что и есть вопросы.
GrayedFox
1
Возможно, стоит заглянуть и в Safari. Safari - единственный браузер, который не поддерживает клиентские загрузки. Обходные пути: а) открыть BLOB URI (короткий, временный URI, который указывает на большой двоичный объект в памяти) в новом окне, б) открыть кодированный URI URI данных в новом окне (может быть очень длинным, но поддерживает типизацию пантомимы). Подробности здесь: github.com/eligrey/FileSaver.js/issues/12
Мат Гессель,
@Vaitkevicius Знаете ли вы, если пробел (% 20) считается как один символ или 3?
июнь 711
1
@Jun зависит от того, где ... нажмите F12 и вставьте следующее в консоль, console.log("%20".length +" "+decodeURI("%20").length)это должно объяснить это
Матас Вайткявичюс
96
Там действительно нет универсальной максимальной длины URL. Максимальная длина определяется только тем, что клиентский браузер выбирает для поддержки, которая варьируется в широких пределах. Ограничение в 2 083 присутствует только в Internet Explorer (все версии до 7.0). Максимальная длина в Firefox и Safari, по-видимому, не ограничена, хотя возникает нестабильность, когда URL-адреса достигают 65 000 символов. У Opera, похоже, нет максимальной длины URL, и она не страдает нестабильностью при очень большой длине.
Если нестабильность составляет около 65 КБ, то она, вероятно, прямо там около 65535 (2 ^ 16 - 1). Может быть, они перебирают символы, используя короткий I? Просто мысль. Интересно, какой URL они тестировали на 65k + o_o ;;
Гарет Клаборн
5
Эти ответы, возможно, должны быть приняты, поскольку они дают конкретные ответы: 2k для IE, 65k для Safari / Firefox, «больше» для Opera.
эйс
Мне любопытно. Является ли URL-адрес 65 КБ URI схемы данных или действительно URL в классическом смысле?
SaAtomic
81
На платформах Apple (iOS / macOS / tvOS / watchOS) ограничение может составлять URL-схему длиной 2 ГБ , как видно из этого комментария в исходном коде 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/CFURLif((urlStringLength >0)&&(urlStringLength <= INT_MAX)){...
На iOS я протестировал и подтвердил, что принят даже URL-адрес более 300 МБ. Вы можете попробовать такой длинный URL, как это в Objective-C:
Вы, сэр, заслуживаете +1 только за попытку попробовать URL размером 300 МБ
Дамян Станчев
3
iOS не является браузером сама по себе. Это было в Safari для iOS?
Рэндалл
6
Схемы @Randall обрабатываются ОС, а затем отправляются в приложение, которое может их открыть. Таким образом, все приложения на iOS, включая Safari, могут обрабатывать длинные URI.
Cœur
1
Благодарю за разъяснение. Предположительно, однако, это не мешает произвольному приложению (скажем, браузеру на платформе Tor) вводить собственное ограничение длины, верно?
Рэндалл
1
@ Рандал правильно, но зачем кому-то это делать ...
Ксандер
70
URI RFC (из которых URL - адреса являются подмножеством) не определяет максимальную длину, однако, это не рекомендуется , что имя хоста часть URI (если это применимо) , не должна превышать 255 символов в длину:
Производители URI должны использовать имена, соответствующие синтаксису DNS, даже если использование DNS не является очевидным, и должны ограничивать эти имена длиной не более 255 символов.
Как отмечалось в других публикациях, некоторые браузеры имеют практическое ограничение длины URL.
URI в HTTP могут быть представлены в абсолютной форме или относительно некоторого
известного базового URI [11], в зависимости от контекста их использования. Эти две
формы отличаются тем, что абсолютные URI всегда начинаются
с имени схемы, за которым следует двоеточие. Для получения полной информации о
синтаксисе и семантике URL см. «Унифицированные идентификаторы ресурсов (URI): общий синтаксис и семантика», RFC 2396 [42] (который заменяет RFC 1738 [4] и RFC 1808 [11]). Эта спецификация принимает определения «URI-ссылка», «absoluteURI», «absoluteURI», «порт»,
«хост», «abs_path», «rel_path» и «полномочия» из этой
спецификации.
Протокол HTTP не устанавливает каких-либо априорных ограничений на длину
URI. Серверы ДОЛЖНЫ иметь возможность обрабатывать URI любого ресурса, который они обслуживают, и ДОЛЖНЫ иметь возможность обрабатывать URI неограниченной длины, если они предоставляют формы на основе GET, которые могут генерировать такие URI. * Серверу СЛЕДУЕТ возвращать 414 (Request-URI Too Long) состояние, если URI длиннее, чем может обработать сервер (см. раздел 10.4.15).
Примечание. Серверы должны соблюдать осторожность при зависимости длины URI выше 255 байт, поскольку некоторые старые реализации клиента или прокси-сервера могут не поддерживать эти длины должным образом.
Как уже упоминалось @Brian, HTTP-клиенты (например, браузеры) могут иметь свои собственные ограничения, а HTTP-серверы будут иметь разные ограничения.
социальный интерфейс в Интернете опирается на электронную почту, когда пользователи хотят рекомендовать друг другу веб-страницы, а электронная почта является вторым наиболее распространенным способом доступа пользователей к новым сайтам (наиболее распространенными являются поисковые системы): убедитесь, что все URL-адреса на вашем Длина сайта не превышает 78 символов, поэтому они не будут переноситься через перевод строки.
Это не максимум, но я бы посчитал это практическим максимумом, если вы хотите, чтобы ваш URL был опубликован.
Интересно, откуда взялась "78"? Может быть, эта оригинальная статья 1999 года была написана в предположении, что люди читают свою электронную почту в терминальных окнах 80x24? Тем не менее, хороший совет!
Джон Шнайдер
3
Хорошо. Перфокарты IBM были также 80 столбцов. С двумя символами, занятыми возвратом каретки и переводом строки, вы получаете 78.
Пол Морган
1
Ха - ха. :-) Я действительно рассматривал ссылку на мониторы CGA 80x25 1981-го года в моем комментарии, но вы достигли еще большего! ... меня не было в эпоху перфокарт, но были ли они размером 80 байт или только 80 бит?
Джон Шнайдер
1
Не совсем байт (8 бит). Он закодировал один символ в каждом столбце.
Пол Морган
3
@JonSchneider - 78 довольно специфичен и может относиться к читабельности текста (с точки зрения удобства использования, учитывая опыт Нильсена), который лучше всего составляет от 50 до 60 и максимум до 75 .
Джей Рейни
36
Протокол Sitemaps , который позволяет веб-мастерам информировать поисковые системы о страницах на своих сайтах (также используется Google в Инструментах для веб-мастеров), поддерживает URL-адреса длиной менее 2048 символов. Поэтому, если вы планируете использовать эту функцию для поисковой оптимизации, примите это во внимание.
Это немного сбивает с толку. Протоколы Sitemap «поддерживает URL-адреса длиной менее 2048 символов». Я думал, что сайт, как example.com будет работать. Я думаю, что этот вопрос больше о максимуме?
HoldOffHunger
19
Службы отчетов ASP.NET 2 и SQL Server 2005 имеют ограничение в 2028. Я выяснил это трудным путем, когда мой динамический генератор URL-адресов не передавал некоторые параметры в отчет после этой точки. Это было под Internet Explorer 8.
Разница между Internet Explorer и IIS имеет смысл, если учесть, что не все запросы к веб-серверу выполняются через браузер.
TroySteven
15
Директива строки запроса Limit устанавливает максимальную длину URL. По умолчанию он установлен на 8190, что дает вам много места. Однако другие серверы и некоторые просмотры ограничивают длину больше.
Поскольку все параметры передаются в строке URL, элементы, которые были в пароле скрытых полей, также будут отображаться в URL-адресе. Ни один мобильный телефон не должен использоваться для реальных мер безопасности, и в лучшем случае его следует рассматривать как косметическую безопасность.
У меня есть опыт работы с SharePoint 2007, 2010, и существует ограничение длины URL-адреса, который вы можете создать со стороны сервера, в данном случае SharePoint, поэтому в основном это зависит от: 1) клиента (браузера, версии и ОС) и 2) серверные технологии, IIS, Apache и др.
Поскольку SharePoint предоставляет веб-URL-адреса в качестве путей к файлам, он сталкивается с отдельным ограничением: ограничение длины пути к файлам Windows в 260 символов (или 248 символов при использовании API). Дополнительные сведения об этом ограничении см. В разделе «Ограничение максимальной длины пути» здесь: msdn.microsoft.com/en-us/library/aa365247(VS.85).aspx
Thriggle
10
Похоже, что Chrome хотя бы поднял этот предел. Я вставил 20 000 символов в букмарклет, и это заняло.
Согласно спецификации HTTP, длина URL не ограничена. Держите ваши URL до 2048 символов; это обеспечит работу URL-адресов во всех конфигурациях клиентов и серверов. Кроме того, поисковые системы, такие как URL-адреса, остаются под 2000 символов.
get
а неpost
, тогда добавление в закладки страницы, достигнутой заполненной формой, захватит введенную информацию. В некоторых случаях это может быть плохо, но в других случаях это может быть полезно. Однако, чтобы это работало, браузер должен иметь возможность обрабатывать URL, содержащий всю информацию.post
или критерии усекаются. Просто еще один вариант использования.Ответы:
Краткий ответ - фактический лимит в 2000 символов
Если вы держите URL-адреса длиной до 2000 символов, они будут работать практически в любой комбинации клиентского и серверного программного обеспечения.
Если вы ориентируетесь на определенные браузеры, см. Ниже подробности конкретных ограничений.
Более длинный ответ - сначала стандарты ...
RFC 2616 (протокол передачи гипертекста HTTP / 1.1) раздел 3.2.1 говорит
Этот RFC устарел в RFC7230, который является обновлением спецификации HTTP / 1.1. Он содержит похожий язык, но также предлагает следующее:
... и реальность
Это то, что говорят стандарты . На самом деле на boutell.com была статья (ссылка идет на резервное копирование в Интернет-архив), в которой обсуждалась поддержка отдельных реализаций браузера и сервера. Исполнительное резюме:
(Примечание: это цитата из статьи , написанной в 2006 году , но в 2015 году снижение означает использование в IE , что более длинные URL , делают работу для большинства Однако, IE все еще имеет ограничение ....)
Ограничения Internet Explorer ...
Максимальная длина URL IE8 составляет 2083 символа , и, похоже, IE9 имеет аналогичное ограничение .
Я протестировал IE10, и адресная строка будет принимать только 2083 символа. Вы можете щелкнуть URL-адрес, который длиннее этого, но в адресной строке по-прежнему будет отображаться только 2083 символа этой ссылки.
В блоге IE Internals есть хорошая рецензия, в которой рассказывается об этом.
Есть смешанные отчеты IE11 поддерживает более длинные URL-адреса - см. Комментарии ниже. Учитывая, что некоторые люди сообщают о проблемах, общий совет остается в силе.
Поисковые системы, такие как URL <2048 символов ...
Помните, что протокол sitemaps , который позволяет сайту информировать поисковые системы о доступных страницах, имеет ограничение в 2048 символов в URL. Если вы собираетесь использовать файлы Sitemap, для вас определено ограничение! (см. ответ Калина-Андрея Бурлойу ниже)
Также в 2010 году было проведено исследование максимальной длины URL, которую поисковые системы будут сканировать и индексировать . Они обнаружили, что ограничение составляет 2047 символов, что похоже на спецификацию протокола карты сайта. Однако они также обнаружили, что инструмент Google SERP не справляется с URL-адресами длиннее 1855 символов.
CDN имеют ограничения
CDN также накладывают ограничения на длину URI и возвращают a,
414 Too long request
когда эти пределы достигнуты, например:(благодарность timrs2998 за предоставление этой информации в комментариях)
Дополнительный обзор браузера
Я протестировал следующее на сервере Apache 2.4, настроенном с очень большими LimitRequestLine и LimitRequestFieldSize .
Смотрите также этот ответ от Матаса Вайткявичюса ниже.
Эта информация актуальна?
Это популярный вопрос, и поскольку первоначальному исследованию было ~ 12 лет, я постараюсь держать его в актуальном состоянии: по состоянию на январь 2020 года этот совет все еще остается в силе. Несмотря на то, что IE11 может принимать более длинные URL-адреса, повсеместность более старых установок IE плюс ограничения поисковой системы означают, что оставаться под 2000 символами - лучшая общая политика.
источник
Самые длинные URL-адреса, с которыми я столкнулся, - это URL-адреса данных.
Пример изображения URL из результатов поиска Google (11747 символов)
источник
Часто задаваемые вопросы WWW: Какова максимальная длина URL? имеет свой ответ, основанный на эмпирическом тестировании и исследованиях. Короткий ответ: использование более 2048 символов делает Internet Explorer несчастным, и это ограничение, которое вы должны использовать. Смотрите страницу для длинного ответа.
источник
Я написал этот тест, который продолжает добавлять
'a'
к параметру, пока браузер не выйдет из строяC # часть:
Посмотреть:
ЧАСТЬ 1
На Chrome я попал:
Затем он взорвался с:
То же самое в Internet Explorer 8 и Firefox
ЧАСТЬ 2
Я пошел легкий режим и добавил дополнительные ограничения для IISExpress
applicationhost.config
иweb.config
настройкиmaxQueryStringLength="32768"
.после 7744 символов.
ЧАСТЬ 3
добавленной
что совсем не помогло. Я наконец решил использовать fiddler для удаления реферера из заголовка.
Который сделал хорошо.
Хром: до 15613 символов. (Я полагаю, это предел 16 КБ для IIS)
И это снова не удалось с:
Fire Fox:
Internet Explorer 8 завершился с ошибкой iexplore.exe.
После 2505
Эмулятор Android
Internet Explorer 11
Internet Explorer 10
Internet Explorer 9
источник
console.log("%20".length +" "+decodeURI("%20").length)
это должно объяснить этоТам действительно нет универсальной максимальной длины URL. Максимальная длина определяется только тем, что клиентский браузер выбирает для поддержки, которая варьируется в широких пределах. Ограничение в 2 083 присутствует только в Internet Explorer (все версии до 7.0). Максимальная длина в Firefox и Safari, по-видимому, не ограничена, хотя возникает нестабильность, когда URL-адреса достигают 65 000 символов. У Opera, похоже, нет максимальной длины URL, и она не страдает нестабильностью при очень большой длине.
источник
На платформах Apple (iOS / macOS / tvOS / watchOS) ограничение может составлять URL-схему длиной 2 ГБ , как видно из этого комментария в исходном коде Swift :
На iOS я протестировал и подтвердил, что принят даже URL-адрес более 300 МБ. Вы можете попробовать такой длинный URL, как это в Objective-C:
И поймать, если это удастся с:
источник
URI RFC (из которых URL - адреса являются подмножеством) не определяет максимальную длину, однако, это не рекомендуется , что имя хоста часть URI (если это применимо) , не должна превышать 255 символов в длину:
Как отмечалось в других публикациях, некоторые браузеры имеют практическое ограничение длины URL.
источник
Спецификация HTTP 1.1 гласит:
Как уже упоминалось @Brian, HTTP-клиенты (например, браузеры) могут иметь свои собственные ограничения, а HTTP-серверы будут иметь разные ограничения.
источник
Служба поддержки Майкрософт сообщает: «Максимальная длина URL-адреса составляет 2083 символа в Internet Explorer».
У IE проблемы с URL длиннее. Firefox, кажется, хорошо работает с> 4k символов.
источник
В URL как UI Якоб Нильсен рекомендует:
Это не максимум, но я бы посчитал это практическим максимумом, если вы хотите, чтобы ваш URL был опубликован.
источник
Протокол Sitemaps , который позволяет веб-мастерам информировать поисковые системы о страницах на своих сайтах (также используется Google в Инструментах для веб-мастеров), поддерживает URL-адреса длиной менее 2048 символов. Поэтому, если вы планируете использовать эту функцию для поисковой оптимизации, примите это во внимание.
источник
Службы отчетов ASP.NET 2 и SQL Server 2005 имеют ограничение в 2028. Я выяснил это трудным путем, когда мой динамический генератор URL-адресов не передавал некоторые параметры в отчет после этой точки. Это было под Internet Explorer 8.
источник
Почему ограничение Internet Explorer составляет всего 2 КБ, а в IIS - 16 КБ? Я не думаю, что это имеет смысл.
Поэтому я хочу начать эксперимент с ограничениями размера URL-адреса запроса Ajax.
Я установил в своем коннекторе Tomcat HTTP maxHttpHeaderSize = "1048576". И подготовил очень длинный URL.
Затем я отправляю запрос с длинным URL следующим образом:
JQuery отчеты сделаны. Tomcat сообщает, что запрошенный URL-адрес составляет 1048015 байт. Он был протестирован с Chrome 50 и Internet Explorer 11.
Поэтому веб-браузеры не будут умышленно урезать или ограничивать ваш URL при отправке запросов Ajax.
источник
Директива строки запроса Limit устанавливает максимальную длину URL. По умолчанию он установлен на 8190, что дает вам много места. Однако другие серверы и некоторые просмотры ограничивают длину больше.
Поскольку все параметры передаются в строке URL, элементы, которые были в пароле скрытых полей, также будут отображаться в URL-адресе. Ни один мобильный телефон не должен использоваться для реальных мер безопасности, и в лучшем случае его следует рассматривать как косметическую безопасность.
источник
У меня есть опыт работы с SharePoint 2007, 2010, и существует ограничение длины URL-адреса, который вы можете создать со стороны сервера, в данном случае SharePoint, поэтому в основном это зависит от: 1) клиента (браузера, версии и ОС) и 2) серверные технологии, IIS, Apache и др.
источник
Похоже, что Chrome хотя бы поднял этот предел. Я вставил 20 000 символов в букмарклет, и это заняло.
источник
Согласно спецификации HTTP, длина URL не ограничена. Держите ваши URL до 2048 символов; это обеспечит работу URL-адресов во всех конфигурациях клиентов и серверов. Кроме того, поисковые системы, такие как URL-адреса, остаются под 2000 символов.
источник