nginx 1.14.2 + php-fpm 7.1.27 - Не передает POST

Тема в разделе "Администрирование серверов", создана пользователем Killer67, 26 мар 2019.

Метки:
Модераторы: mefish
  1. Killer67

    Killer67 Постоялец

    Регистр.:
    25 мар 2012
    Сообщения:
    91
    Симпатии:
    4
    Решился я переехать на новую систему CentOS.
    Подготовил сервер, поставил: nginx 1.14.2 + php-fpm 7.1.27 + MariaDB 10.2.23
    Перенес phpMyAdmin и тут проблема, при попытке авторизоваться получаю пустую форму, как если бы ничего не делал..

    Проверил логи, везде пусто.
    Проэксперементировал (так как nginx передает на php-fpm запросы) решил проверить передается ли POST и что в нем передается оказывается этот массив пуст.

    nginx.conf


    Настройка виртуального хоста для phpMyAdmin


    Настройка php-fpm (по умолчанию, разве что перенаправил слушателя с сети на сокет)
    www.conf


    Для чистоты экспериментов сделал такой минискрипт:


    если зайти на страницу со скриптом, все норм:
    1. Верхняя часть страницы, 3 пустых массива.
    2. Средняя форма
    3. Нижняя часть вывод массива $_SERVER

    Если изменить адрсную строку добавив гет параметры, то верхняя часть страницы меняется отображаются массивы $_GET и $_REQUEST, при отправки формы, ничего не меняется, как были только данные от $_GET так они и остались.

    По интернету покопался, отключал gzip не мопогает.
    Изменял настройки Fcgi_param добавляя
    fastcgi_param REQUEST_BODY_FILE $request_body_file;
    Результата не дало.

    Подскажите где и что я пропустил?
     
  2. dandandan

    dandandan

    Регистр.:
    7 авг 2008
    Сообщения:
    1.027
    Симпатии:
    277
    1. Закрывающий тег </pre> должен быть перед тегом <form> , а не после закрывающегося тега </form>
    2. Какие ошибки в логах сервера?
    3. Если на post запрос nginx возвращает редирект, к новому адресу выполняет уже обычный get, без параметров
     
  3. Killer67

    Killer67 Постоялец

    Регистр.:
    25 мар 2012
    Сообщения:
    91
    Симпатии:
    4
    1. Думаю к теме не имеет отношения, в этот тег я обычно заворачиваю только одно print_r()..
    2. После отправки ПОСТ, появляется только одна строка в одном логе:
    213.87.137.102 - - [26/Mar/2019:15:50:09 +0300] "POST /?status=23 HTTP/1.1" 200 1535 "http://western-soft.com/?status=23" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:65.0) Gecko/20100101 Firefox/65.0" "-"
    3. Ответ сервера 200, это нормальный ответ...
     
  4. metsys

    metsys

    Регистр.:
    27 апр 2014
    Сообщения:
    549
    Симпатии:
    562
    Вы такой пурги нанесли, что можно потеряться:
    Вы хвалитесь или какое отношение это имеет к сути вопроса?

    У вас проблема с phpmyadmin или POST запросом?

    Если phpmyadmin , то у вас нерабочий конфиг nginx, если ,с POST, то оберните submit в <fieldset> </fieldset>
     
  5. Killer67

    Killer67 Постоялец

    Регистр.:
    25 мар 2012
    Сообщения:
    91
    Симпатии:
    4
    1. Проблема проявилась на phpMyAdmin, как правильно настраивать? C Apache все было проще...
    2. Обернул, ничего не изменилось..
     
  6. lag

    lag

    Регистр.:
    13 окт 2014
    Сообщения:
    272
    Симпатии:
    340
    Чтобы нормально разобрать тело запроса, должно быть известно какой там тип содержимого (multipart/form-data, application/x-www-form-urlencoded) и размер тела запроса, но CONTENT_TYPE и CONTENT_LENGTH в конфиге закомментированы.
     
    Последнее редактирование: 26 мар 2019
  7. Горбушка

    Горбушка Ищу её...

    Регистр.:
    2 май 2008
    Сообщения:
    3.392
    Симпатии:
    2.361
    Что в значении post_max_size ?

    Добавь в скрипт:
    PHP:
    $data file_get_contents('php://input');
    var_dump($data);
    Значения POST попадают в вывод?
     
  8. Killer67

    Killer67 Постоялец

    Регистр.:
    25 мар 2012
    Сообщения:
    91
    Симпатии:
    4
    Странно, в прошлый раз не работало, теперь помогло...