Большая ошибка сервера запросов POST

Для своего веб-сервера я использую IIS8 на Windows Server 2012 с ASP.NET, PHP7 + и FastCGI.

Моя проблема: когда я пытаюсь отправить формуляр (HTML to PHP) со строкой значения, в этом случае более 20 000 символов, сервер возвращает 500 Server Error ИЛИ ЖЕ он вообще не распознает почтовый запрос.

Мой код HTML / PHP:

<?php if(isset($_POST['submit'])) { echo "Got it!"; } ?>

<form action="" method="post">
<input type="text" value="String with 20000+ characters" name="value">
<input type="submit" name="submit">
</form>

При нажатии кнопки «Отправить» появляется ошибка сервера. В запросе post эти строки вставляются в файл журнала ошибок PHP:

[] PHP Warning:  Unknown: Unable to create temporary file, Check permissions in temporary files directory. in Unknown on line 0
[] PHP Warning:  Unknown: POST data can't be buffered; all data discarded in Unknown on line 0

Я также отредактировал все параметры конфигурации это может быть связано с этим.

php.ini

post_max_size = 1024M
memory_limit = 512M
upload_max_filesize = 1024M

web.config на моем сервере

<system.web><httpRuntime maxRequestLength="1048576" executionTimeout="3600" />
</system.web>

<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="1073741824" />
</requestFiltering>

Спасибо за любую поддержку.

2

Решение

В терминале типа:

chmod -R 777 /your/upload/folder

вы можете узнать папку, куда ваш php загружает файлы, выполнив этот код:

$tmp_dir = ini_get('upload_tmp_dir') ? ini_get('upload_tmp_dir') : sys_get_temp_dir();
die($tmp_dir);

В моем случае я получаю / var / … поэтому, когда я получаю разрешение 777, я не получаю ошибки.

1

Другие решения

В моем случае жесткий диск был заполнен. Так что нет места даже для записи временных данных. После удаления некоторых файлов все снова делало POST.

1

По вопросам рекламы [email protected]