Предел аргументов POST в HTML или php

есть ли предел аргументов POST? У меня есть ситуация, где на dev сервере моя форма с более чем 520 args отправляется и сохраняется без проблем, где на производственном ENV это сохраняет только до 499 args...

Какие-либо идеи?

5
задан William Perron 27 October 2016 в 18:57
поделиться

4 ответа

Я не думаю, что существует ограничение на число переменных, отправляемых через POST, только на их накопленный размер . Предел варьируется от сервера к серверу.

Обновление: Патч защиты PHP Suhosin может фактически накладывать ограничение на количество переменных запроса. По умолчанию 200 1000. Suhosin установлен по умолчанию в Ubuntu, поэтому это может быть причиной вашей проблемы. Информация любезно предоставлена ​​@Pascal Martin, ура!

Есть два фактора для ограничения максимального размера POST:

Вы можете узнать его значение, используя phpinfo () .

И ограничения веб-сервера:

В вашем конкретном случае вы можете добавить, на каком сервере вы это используете, и насколько велики данные. Близятся ли 520 аргументов к post_max_size ? Что произойдет, если вы выполните print_r ($ _ REQUEST) в принимающем сценарии?

10
ответ дан 18 December 2019 в 14:44
поделиться

Да, это управляется директивой post_max_size , которая по умолчанию равна 8M.

Количество аргументов не имеет значения, но вы, вероятно, превысили лимит в своей продукции.

Вы можете запустить ini_get ('post_max_size') в обеих средах, чтобы увидеть, есть ли разница.

Вы не можете изменить его из ini_set, однако можно изменить директиву из .htaccess.

1
ответ дан 18 December 2019 в 14:44
поделиться

Я думаю, что ограничение POST независимо от того, что настроено в php.ini (8M по по умолчанию?)

0
ответ дан 18 December 2019 в 14:44
поделиться

Вам нужно увеличить POST_MAX_SIZE в php.ini (или используйте ini_set () на странице).

http://uk.php.net/manual/en/ini.core.php#ini.post-max-size

0
ответ дан 18 December 2019 в 14:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: