it-swarm.com.ru

Каков предел размера почтового запроса?

Извините, если это дубликат, я думаю, что это будет, но ничего не смог найти.

У меня есть гибкое приложение, которое я отправляю данные обратно на сервер php/mysql через IE. Я еще не сталкивался с какими-либо проблемами, но зная об этом заранее, я мог бы избавить меня от разочарований и работы. Существует ли ограничение размера для размещения данных через http?

Эта статья говорит нет: http://www.netlobo.com/ie_form_submit.html

Это обсуждение говорит да: http://bytes.com/topic/php/answers/538226-what-maximum-limit-using-post-method

И все это говорит о том, что я могу найти в Интернете. Поэтому , пожалуйста ограничьте количество ответов проверенными/проверенными номерами.

Я хочу отправить обратно строку XML, которая может быть довольно большой (скажем, до 5 МБ).

Если это имеет какое-то значение: браузер всегда будет IE (наш продукт требует этого), отправка сообщения и httpService на flex, веб-сервер php, DB - mySql.

244
invertedSpear

Это зависит от конфигурации сервера. Если вы работаете с PHP под Linux или подобным, вы можете управлять им с помощью файла конфигурации .htaccess, например так:

#set max post size
php_value post_max_size 20M

И да, я могу лично засвидетельствовать тот факт, что это работает :)

Если вы используете IIS, я понятия не имею, как вы установите это конкретное значение.

193
inkedmn

URL-часть запроса (GET и POST) может быть ограничена как браузером, так и сервером - обычно безопасный размер составляет 2 КБ, поскольку практически нет браузеров или серверов, которые используют меньшее ограничение.

Тело запроса (POST) обычно * ограничено сервером на основе размера байта, чтобы предотвратить тип атаки DoS (обратите внимание, что это означает, что экранирование символа может увеличить размер тела в байтах). Наиболее распространенная настройка сервера - 10 МБ, хотя все популярные серверы позволяют увеличивать или уменьшать ее с помощью файла настроек или панели.

* Существуют некоторые исключения для старых мобильных телефонов или других браузеров для небольших устройств - в этих случаях это скорее функция кучи, зарезервированной для этой цели на устройстве, чем что-либо еще.

69
David

Также в файле PHP.INI есть настройка:

max_input_vars

который в моей версии PHP: 5.4.16 по умолчанию 1000.

Из руководства: "Сколько входных переменных может быть принято (ограничение применяется к суперглобальным $ _GET, $ _POST и $ _COOKIE отдельно)"

Ссылка: http://www.php.net/manual/en/info.configuration.php#ini.max-input-vars

46
Nikolay Ivanov

Вы можете опубликовать большой объем данных, установив переменную php.ini: max_input_vars Размер этой переменной по умолчанию равен 1000, но если вы хотите отправить большой объем данных, вы должны соответственно увеличить размер. Если вы не можете установить размер из ini_set, вы должны сделать это с помощью htaccess или внести изменения в файл php.ini напрямую.

max_input_vars  2500
memory_limit    256M
11
Nilesh Chourasia

Как отметил Дэвид, я бы пошел с KB в большинстве случаев.

php_value post_max_size 2KB

Примечание: моя форма проста, всего несколько текстовых полей, а не длинный текст.

5
ChrisDeDavidMindflowAU

По умолчанию максимальный размер почтового запроса составляет 8 МБ. Но вы можете изменить его в соответствии с вашими требованиями. Изменение можно сделать, открыв файл php.ini (настройка конфигурации php).

Найти

post_max_size=8M  //for me, that was on line:771

заменить 8 в соответствии с вашими требованиями.

1
Muhammad Ashfaq

Сервер http решает, есть ли ограничение. Продукт, над которым я работаю, позволяет администратору настроить ограничение.

1
ChrisH