Подтвердить что ты не робот

Каков лимит символов в URL-адресе

Каков предел символов для URL-адреса, особенно если URL-адрес сформирован из метода GET формы.

4b9b3361

Ответ 1

По данным Microsoft, это 2048 год. Поскольку они изобрели интернет (а также свет, тьму и Linux), они правы.:-).... или.. и поскольку IE заставляет это меньшее значение, это самый низкий общий знаменатель.

http://support.microsoft.com/kb/208427

В Firefox, я вижу, что люди на чистых URL-адресах отчетов 0xFFFF работают: http://forums.mozillazine.org/viewtopic.php?f=38&t=155648&start=0&st=0&sk=t&sd=a

Вот еще одно сообщение, в котором говорится об этом: http://hiox.org/index.php?id=425


EDIT: это очень печально, что почти через 5 лет после того, как я написал этот ответ - это все еще так. Если можно, посмотрите на историю этого ответа.

EDIT2: я нашел лучший ответ на StackOverflow - Какова максимальная длина URL-адреса в разных браузерах?

Ответ 2

Нет опубликованного максимума, но эффективный предел составляет около 2000 символов, потому что поддерживает Internet Explorer (версия 4 и выше). См. http://www.boutell.com/newfaq/misc/urllength.html

Ответ 3

Объяснение

Не существует правила большого пальца для максимального размера URL-адреса HTTP Get Запрос в соответствии с RFC 2616 (протокол передачи гипертекста - HTTP/1.1 - раздел 3.2.1).

Ограничения накладываются различными браузерами и соответствующими серверами.
Эти ограничения должны рассматриваться коллективно при передаче строки запроса, переданной в URL-адресе в любом из HTTP-запросов.

Если размер URL превышает ограничение размера URL, наложенное соответствующим браузером, запрос не будет передан серверу, и для отладки и обработки этой ситуации потребуются ненужные усилия.


Максимальный размер URL по...

Браузер

  • Internet Explorer

    2048 B

    Microsoft Internet Explorer имеет максимальную единицу длины ресурса (URL) 2,083 символа. Internet Explorer также имеет максимальную длину пути 2048 символов. Это ограничение применяется как к запросу POST, так и к URL-адресу запроса GET. Если вы используете метод GET, вы ограничены максимум 2048 символами, минус количество символов в фактическом пути.

  • Mozilla Firefox

    100 КБ

    В адресной строке не отображаются символы, превышающие 65 536 символов. Но размер URL может быть больше, чем, хотя вы не можете просмотреть его в адресной строке. Это относится к FireFox 1.5 до текущей версии FireFox

  • Opera

    200 КБ

    URL-адрес полностью отображается в адресной строке даже в таком большом диапазоне

  • Chrome, Safari

    100 КБ

    Оба браузера основаны на webkit и, похоже, имеют почти тот же предел, что и firefox


Сервер

  • Apache

    128 КБ

    Размер изменяется с помощью параметра LimitRequestLine сервера

  • IIS

    16 КБ

    Значение по умолчанию - 16 КБ, максимальное ограничение - 16 МБ

  • Примечания Lotus Notes

    4 КБ


Дополнительная информация

Очень длинные URL-адреса вообще не рекомендуются.
Для веб-приложения, совместимого с браузером, метод Get не должен использоваться для передачи очень длинных строк, содержащих больше чем 2000 символов.

Если вы столкнулись с ситуацией, когда вам нужно использовать URL-адреса, чтобы содержать огромное количество символов, тогда дайте ему еще одну мысль.

Ответ 4

Новый IE: 2048 символов Некоторые платформы поддерживают только 255.

Ответ 5

Различные браузеры имеют разные ограничения. Но, как правило, предел составляет около 2000 символов для метода GET URL-адреса. Вы можете использовать страницу прокси, которая выполняет POST-метод (если ваш API поддерживает его) и имеет больший предел в 5000 символов. В настоящее время мы изучаем страницу прокси с API карт Google, поскольку мы врезались в предел 2000 символов.