Intereting Posts
TCPDF – Pagenumbers не совсем правильно выровнены Создайте пользователя, когда я отправлю форму Как сохранить JQuery UI упорядоченные позиции таблицы в базе данных MySQL? Пример объектно-ориентированного класса php Почему в этом коде не работает тег линии html br break? Как я должен реализовать «аутентификацию на основе токенов» для набора веб-API безопасным способом с использованием PHP и MySQL (без использования OAuth)? Как исключить типы файлов из цикла каталогов Iterator Laravel 4 Отношения между мужчинами и женщинами Модуль Drupal Добавить пункт меню в основные ссылки? Передача значений с JavaScript на PHP с использованием AJAX Запустить некоторый скрипт в mysql start Преобразование многомерного массива в одномерный что такое «php: // input»? В основном это наблюдается в webservice Какую стороннюю поисковую систему (бесплатно) я должен использовать? PHP: Самый чистый способ изменения многомерного массива?

Запросить сущность слишком большого PHP

На одном из моих сайтов CakePHP я получил эту ошибку.

Запросить объект слишком большой

Я не знаю, в чем проблема. Я думаю, что данные, которые я отправляю через форму, слишком велики. Я искал это в поисковой системе и получил, что мне придется увеличить post_max_size . По умолчанию я думаю, что он установлен на 8M.

Но не знаете, как увеличить post_max_size в CakePHP и что с ним делать?

Благодарю.

post_max_size и upload_max_filesize – это настройки PHP.ini. Вы можете установить их либо непосредственно в PHP.ini, либо через ini_set . Я не знаю, можно ли это установить с некоторыми инструментами Cake.

Однако ошибка также может быть вызвана установленным пределом RequestBodyLength в Apache (при условии, что вы работаете под Apache).

Я попробовал все эти ответы, и единственное, что сработало для меня, – это настроить размер буфера SSL. Вы можете установить это …

 <Directory /my/blah/blah> ... # Set this to something big big... SSLRenegBufferSize 10486000 ... </Directory> 

… а затем просто перезапустите Apache, чтобы вступить в силу. (Найдено по адресу: http://forum.joomla.org/viewtopic.php?p=2085574 )

Другой возможной причиной слишком большой ошибки «413 request entity» является mod-security. Это и послужило причиной для меня.

Заглядывая в журнал ошибок Apache, он сказал:

ModSecurity: тело запроса. Длина данных для файлов больше, чем установленный предел (131072). Запретить код (413)

На моем Ubuntu 14.04 конфигурационный файл находится здесь, но это действительно зависит от системы:

/etc/modsecurity/modsecurity.conf

Существует значение по умолчанию для SecRequestBodyNoFilesLimit (и, возможно, также SecRequestBodyInMemoryLimit ).

Я думаю, вам нужно установить это в файле конфигурации PHP, php.ini. Если у вас есть доступ к VPS / корневому уровню, просто увеличьте его размер. Если вы не используете (общий хостинг), вы можете изменить параметры php ini во время выполнения. Обратите внимание, что ini_set () не будет работать здесь, потому что параметры PHP загружаются слишком поздно (после того, как файл был загружен, скрипт PHP начинает выполнение).

Вам необходимо включить следующее в ваш файл htaccess (на общем хостинге):

 php_value post_max_size 104857600 

Возможно, это не сработает. Некоторые поисковые запросы заставляли казаться, что некоторые общие хосты блокируют эту настройку, делая ее не перегруженной в htaccess (только в конфигурации главного сервера). Если это так, вам нужно переместить хосты.

Иногда на общем хостинге вы можете добавить свой собственный файл php.ini – просто скопируйте соответствующие биты из любого файла по умолчанию (или Google для одного).

Это не ошибка, которую я видел раньше – это может быть, как говорит Гордон, быть Apache.

Не бойтесь спросить команду поддержки хостинга – я всегда считал, что они очень полезны (я думаю, они должны быть одиноки), и часто они будут делать изменения конфигурации для вас.

Это, конечно, не проблема CakePHP.

Определенно, не проблема CakePHP, но вот две настройки, которые необходимо установить для правильной загрузки файлов:

 vim /etc/php5/php.ini (or wherever the .ini is located) 

И установите:

 post_max_size="200M" upload_max_filesize="200M" 

Теперь сложная часть в случае, если вы используете HTTPS! вам также необходимо настроить один SSL.

 vim /etc/apache2/sites-available/<whatever>-443.conf 

И установите SSLRenegBufferSize

 <Directory /appdata/www/<whatever>/web> Options FollowSymLinks AllowOverride All Order allow,deny allow from all SSLRenegBufferSize 201048600 </Directory>