Какова максимальная длина в байтах аналитического запроса в браузере
Мой вопрос таков: каков разумный предел длины строки запроса? Я видел упоминание о 2000 с лишним байтах, но это, похоже, связано с браузером, и здесь нет никакого браузера-только мое приложение (использующее Indy) и IIS.
2 ответа
Когда я light мой проект, я получаю следующее предупреждение: C:\Users\me\wix\service.wxs(105) : warning LGHT1076 : ICE03: String overflow (greater than length permitted in column); Table: ServiceInstall, Column: Description, Key(s): ServiceRegister Мой Description довольно длинный, но прежде чем.
Зависит от браузера, для получения дополнительной информации это может помочь
С ограничением на символы, что я обычно делаю, это минимизирую значения строки запроса из вашего примера: &widgetscompleted= может быть сокращено до &wc=.
Я уверен, что если вы сведете их к минимуму, длина не будет проблемой.
Похожие вопросы:
Возможный Дубликат : Какова максимальная длина URL? Здравствуйте, я хочу зарегистрировать реферер в своей базе данных , я хочу знать, какова максимальная длина реферера ?
Я выполню большой запрос, поэтому я хочу знать, какова максимальная длина запроса mongodb ?
Я храню маркер доступа, полученный от Soundcloud, в базе данных и поэтому хотел бы знать, какова максимальная длина строки. Здесь есть аналогичный вопрос, касающийся Facebook. Относится ли то же.
Когда я light мой проект, я получаю следующее предупреждение: C:\Users\me\wix\service.wxs(105) : warning LGHT1076 : ICE03: String overflow (greater than length permitted in column); Table.
Существует ли / какова максимальная длина строки запроса при выполнении запроса AJAX GET? Более конкретно, я делаю кросс-домен AJAX, используя изображение: img = new Image(); img.src =.
В Windows какова максимальная длина строки командной строки? Это означает, что если я укажу программу, которая принимает аргументы в командной строке, такие как abc.exe -name=abc Простое консольное.
Я удивляюсь. какова максимальная длина строки, которая будет хэшироваться? Например, до hash Hello, world! с SHA-1 проблем нет. Но как насчет строки длиной около 100 000 000 символов? Это вообще.
Какова максимальная длина строки PrintArea в Excel 2003 и 2010 годах? У меня есть строка PrintArea длиной 677. Это приводит к ошибке в Excel 2003, но не в 2010 году, поэтому я хотел бы знать, какова.
какова максимальная длина строки запроса, поддерживаемая браузером mobile safari? я работаю над приложением, в котором мне нужно добавить все записи из sqlite дБ на удаленный database.i я использую.
Это зависит от браузера? Кроме того, имеют ли разные веб-стеки разные ограничения на объем данных, которые они могут получить из запроса?
4 ответа
Microsoft Edge (браузер)
Предел составляет около 81578 символов. См. ограничение длины URL-адреса в Microsoft Edge
Chrome
Он останавливает отображение URL-адреса после 64 тыс. Символов, но может обслуживать более 100 тыс. Символов. Никаких дальнейших испытаний не проводилось.
Firefox (браузер)
После 65 536 символов в строке адреса больше не отображается URL-адрес в Windows Firefox 1.5.x. Однако более длинные URL-адреса будут работать. После 100 000 символов дальнейшее тестирование не проводилось.
Safari (браузер)
Как минимум 80 000 символов будут работать. Более того, тестирования не проводилось.
Opera (браузер)
Как минимум 190 000 символов будут работать. Остановлено тестирование после 190 000 символов. Opera 9 для Windows продолжала отображать полностью редактируемые, копируемый и вставляемый URL-адрес в адресной строке даже при 190 000 символов.
Apache (сервер)
Ранние попытки измерить максимальную длину URL-адреса в веб-браузерах натолкнулись на ограничение длины URL-адреса сервера, равное примерно 4000 символов, после чего Apache выдает ошибку «413 Entity Too Large». Использовалась текущая обновленная сборка Apache из Red Hat Enterprise Linux 4. Официальная документация Apache упоминает ограничение в 8192 байта для отдельного поля в запросе.
Microsoft Internet Information Server (сервер)
Ограничение по умолчанию составляет 16 384 символа (да, веб-сервер Microsoft принимает более длинные URL-адреса, чем веб-браузер Microsoft). Это настраивается.
2048 ПЕРСОНАЖЕЙ
Хотя официально ограничения в RFC 2616 отсутствуют, многие в протоколах и рекомендациях безопасности указано, что maxQueryStrings на сервере должно быть установлено максимальное количество символов 1024 . Хотя весь URL-адрес, включая строку запроса, должен иметь значение не более 2048 символов. Цитата
URL считается слишком длинным , если его длина превышает 100 символов . слишком длинный URL-адрес может повлиять как на удобство использования, так и на поисковую систему . Любая потенциальная выгода, которую вы можете получить, добавив ключевые слова , быть разбавленным, так как это небольшой процент от общего URL текст.
Рекомендуемая максимальная безопасность и производительность: 2048 СИМВОЛОВ
См. Приведенный ниже пример кода для серверов Windows IIS с Web.config:
Это также будет работать на уровне сервера с использованием machine.config.
Это только для серверов на базе операционной системы Windows, я не уверен, есть ли аналогичная проблема на apache или других серверах.
Зависит ли это от браузера? Кроме того, есть ли у разных веб-стеков разные ограничения на то, сколько данных они могут получить из запроса?
3 ответа
Мне было интересно, какова самая длинная возможная длина имени, разрешенная Windows kernel? E.g.: я знаю, что kernel использует структуры UNICODE_STRING для хранения всех путей к объектам , и поскольку длина байта широкосимвольной строки хранится внутри USHORT , это позволяет получить максимальную.
Какова максимально допустимая длина поля для номера отслеживания выполнения при редактировании через Shopify API? У меня есть случаи, когда для одной позиции может потребоваться более одного номера отслеживания (например, если клиент заказывает достаточное количество, чтобы несколько коробок.
Microsoft Edge (Браузер)
Предел, по-видимому, составляет около 81578 символов. См . раздел URL ограничение длины Microsoft Edge
Хром
Он перестает отображать URL после 64k символов, но может обслуживать более 100k символов. Никаких дальнейших испытаний было сделано за эти рамки.
Firefox (Обозреватель)
После 65 536 символов строка местоположения больше не отображает URL в Windows Firefox 1.5.x. Однако более длинный URLs будет работать. После 100 000 символов дальнейшее тестирование не проводилось.
Safari (Обозреватель)
Будет работать не менее 80 000 символов. Дальше этого испытания не проводились.
Opera (Обозреватель)
Будет работать не менее 190 000 символов. Прекратил тестирование после 190 000 символов. Opera 9 для Windows продолжал отображать полностью редактируемый, копируемый и вставляемый URL в строке местоположения даже при 190 000 символах.
Apache (сервер)
Ранние попытки измерить максимальную длину URL в веб-браузерах натыкались на ограничение длины сервера URL примерно в 4000 символов, после чего Apache выдает ошибку "413 Entity Too Large". Была использована текущая обновленная сборка Apache, найденная в Red Hat Enterprise Linux 4. В официальной документации Apache упоминается только ограничение в 8192 байта для отдельного поля в запросе.
Сервер IIS (Сервер)
Ограничение по умолчанию составляет 16 384 символа (да, веб-сервер Microsoft принимает более длинные URLs, чем веб-браузер Microsoft). Это настраивается.
Perl HTTP::Daemon (сервер)
Будет работать до 8000 байт. Те, кто строит серверы веб-приложений с модулем Perl HTTP::Daemon, столкнутся с ограничением в 16 384 байта на общий размер всех заголовков запросов HTTP. Это не включает в себя данные формы POST-метода, загрузку файлов и т. д., Но включает в себя URL. На практике это приводило к ошибке 413, когда URL был значительно длиннее 8000 символов. Это ограничение можно легко снять. Найдите все вхождения 16x1024 в Daemon.pm и замените их большим значением. Конечно, это увеличивает вашу подверженность атакам типа "отказ в обслуживании".
Пожалуйста, смотрите приведенный ниже пример кода для серверов Windows IIS с Web.config:
Это также будет работать на уровне сервера с использованием machine.config.
Я работал над AIX и вижу, что некоторые из запущенных процессов ID имеют длину 8. Я использую PID как конкатенацию с другим значением char* и пытаюсь выяснить, какова эта MAX возможная длина PID, если вы смотрите на нее с точки зрения символа? Я посмотрел на структуру pid_t (например.
Какова максимально возможная разница между двумя часовыми поясами? Первая мысль-24 часа, но с переходом на летнее время это 26?
Похожие вопросы:
Возможный Дубликат : Какова максимальная длина url? Каково максимальное количество аргументов запроса, поддерживаемых в запросе GET , и в общей сложности, как долго может длиться этот запрос GET.
Мне было интересно, какова самая длинная возможная длина имени, разрешенная Windows kernel? E.g.: я знаю, что kernel использует структуры UNICODE_STRING для хранения всех путей к объектам , и.
Какова максимально допустимая длина поля для номера отслеживания выполнения при редактировании через Shopify API? У меня есть случаи, когда для одной позиции может потребоваться более одного номера.
Я работал над AIX и вижу, что некоторые из запущенных процессов ID имеют длину 8. Я использую PID как конкатенацию с другим значением char* и пытаюсь выяснить, какова эта MAX возможная длина PID.
Какова максимально возможная разница между двумя часовыми поясами? Первая мысль-24 часа, но с переходом на летнее время это 26?
Название в значительной степени говорит само за себя. Я пытаюсь обеспечить максимальную длину ввода текста в форму. Одним из полей может быть любое допустимое число с плавающей запятой. Какова.
Какова может быть возможная длина маски для адреса IPv4, как у меня есть адрес IP 10.16.16.30/24 . Здесь продолжительность маски составляет 24. Я знаю, что теоретическое максимальное значение равно.
какова максимальная длина URL-адреса в разных браузерах? Отличается ли он среди браузеров?
короткий ответ - де-факто предел 2000 символов
Если вы сохраняете URL-адреса под 2000 символами, они будут работать практически в любой комбинации клиентского и серверного программного обеспечения.
Если вы ориентируетесь на определенные браузеры, см. ниже для получения более подробной информации о конкретных ограничениях.
более длинный ответ-Во-первых, стандарты.
. и реальность
чрезвычайно длинные URL-адреса обычно ошибка. URLs более 2000 символов не будет работать в самой популярной сети броузеры. не используйте их, если вы намерены ваш сайт для работы для большинства Интернет пользователей.
(Примечание: это цитата из статьи, написанной в 2006, но в 2015 году снижение использования IE означает, что более длинные URLs do работа для большинства. Однако IE все еще имеет ограничение. )
ограничения Internet Explorer.
здесь хорошая запись в блоге IE Internals который идет в некотором фоновом режиме к этому.
есть смешанные отчеты IE11 поддерживает более длинные URL - адреса-см. комментарии ниже. Учитывая, что некоторые люди сообщают о проблемах, общий совет все еще остается в силе.
поисковые системы, такие как URLs
имейте в виду, что протокол sitemaps, которым позволяет сайту информировать поисковые системы о доступных страницах, имеет ограничение в 2048 символов в URL. Если вы собираетесь использовать sitemaps, для вас был установлен лимит! (см. Калин-ответ Андрея Бурлою ниже)
есть также некоторые исследования, с 2010 года в максимальная длина URL, что поисковые системы будут сканировать и индексировать. Они нашли предел был 2047 символов, которая появится в союзе с протокола sitemap спецификаций. Однако они также нашли Google серп инструмент не справится с URL-адресами дольше, чем 1855 символов.
дополнительно браузере Раундап
я протестировал следующее против сервера Apache 2.4, настроенного с очень большим LimitRequestLine и LimitRequestFieldSize.
см. также ответ из Matas Vaitkevicius ниже.
эта информация актуальна?
Это популярный вопрос, и как оригинальное исследование
12 лет я постараюсь держать его в курсе: по состоянию на сентября 2018, совет все еще стоит. Несмотря на то, что IE11 может принимать более длинные URL-адреса, повсеместность старых установок IE плюс ограничения поисковой системы означает, что пребывание под 2000 символов является лучшей общей политикой.
www Часто задаваемые вопросы: какова максимальная длина URL-адреса? имеет свой собственный ответ, основанный на эмпирической проверки и исследования. Короткий ответ заключается в том, что переход на 2048 символов делает Internet Explorer несчастным, и, таким образом, это предел, который вы должны использовать. См. страницу для длинного ответа.
самые длинные URL, с которыми я столкнулся, это URL-адреса, данных
пример URL изображения из результатов Google image (11747 символов)
Я написал этот тест, который продолжает добавлять 'a' параметр до тех пор, пока браузер не
вид:
после 7744 персонажей.
часть 3
что совсем не помогло. Я, наконец, решил использовать fiddler для удаления реферера из заголовка.
что было неплохо.
Chrome: получил 15613 символов. (Я думаю, это ограничение 16K для IIS)
и это снова не удалось с:
Firefox:
Internet Explorer 8 не удалось с iexplore.исполняемый обрушивающийся.
Эмулятор Android
Internet Explorer 11
Internet Explorer 10
Internet Explorer 9
действительно нет универсальной максимальной длины URL. Максимальная длина определяется только тем, что клиентский браузер выбирает для поддержки, которая широко варьируется. Ограничение 2,083 присутствует только в Internet Explorer (все версии до 7.0). Максимальная длина в Firefox и Safari кажется неограниченной, хотя нестабильность возникает с URL-адресами, достигающими 65 000 символов. Opera, похоже, не имеет максимальной длины URL-адреса и не страдает нестабильностью на очень длинных длинах.
на URI RFC (из которых URL-адреса являются подмножеством) не определяет максимальную длину, однако, он рекомендую что часть имени хоста URI (если применимо) не превышает 255 символов в длину:
производители URI должны использовать имена, которые соответствовать синтаксису DNS, даже если использование DNS происходит не сразу очевидно, и следует ограничить эти имена не более 255 символов длина.
Как отмечено в других хотя посты, некоторые браузеры имеют практическое ограничение на длину URL-адреса.
в iOS нет ограничений для схем URL. Даже 300 + MB длинный URL принимается. Вы можете попробовать такой длинный URL-адрес такой:
и поймать, если получится с:
Поддержка Microsoft говорит: "максимальная длина URL-адреса составляет 2,083 символа в Internet Explorer".
IE имеет проблемы с URL-адресами дольше. Firefox, похоже, отлично работает с символами >4k.
социальный интерфейс в Интернете полагается на электронную почту, когда пользователи хотят рекомендовать веб-страницы друг другу, а электронная почта является вторым по распространенности способом доступа пользователей к новым сайтам (поисковые системы являются наиболее распространенными): убедитесь, что все URL-адреса на вашем сайте меньше 78 символов, чтобы они не были обернуты через ленту.
Это не максимум, но я считаю, что это практично максимум, если вы хотите, чтобы Ваш URL-адрес был общим.
протокол Sitemaps, который является способом для веб-мастеров информировать поисковые системы о страницах на своих сайтах (также используется Google в инструментах веб-мастеров), поддерживает URL-адреса с менее чем 2048 символов. Поэтому, если вы планируете использовать эту функцию для поисковой оптимизации, примите это во внимание.
почему Internet Explorer ограничивает только 2K, а IIS имеет ограничение 16K? Не думаю, что это имеет смысл.
поэтому я хочу начать эксперимент с ограничениями размера URL-адреса запроса Ajax.
затем я отправляю запрос с длинным URL-адресом следующим образом:
отчеты jQuery сделаны. Tomcat сообщает, что запрошенный URL-адрес составляет 1048015 байт. Это было протестировано с Chrome 50 и Internet Explorer 11.
таким образом, веб-браузеры не будут усекать или ограничивать ваш URL намеренно при отправке Ajax-запросов.
директива Limit request line устанавливает максимальную длину URL-адреса. По умолчанию он установлен на 8190, который дает вам много места. Однако другие серверы и некоторые браузеры, ограничивают длину больше.
поскольку все параметры передаются в строке URL, элементы, которые были в пароле скрытых полей, также будут отображаться в URL, конечно. Ни один мобильный не должен использоваться для реальных мер безопасности и должен рассматриваться как косметическая безопасность в лучшем случае.
У меня есть опыт работы с SharePoint 2007, 2010, и есть предел длины URL, который вы можете создать со стороны сервера в этом случае SharePoint, поэтому он зависит в основном от 1) клиента (браузер, версия и ОС) и 2) серверной технологии, IIS, Apache и т. д.
кажется, что Chrome, по крайней мере, поднял этот предел. Я вставил 20 000 символов в букмарклет, и он взял его.
Читайте также: