Запись тела POST-запроса в файл

Discussion in 'PHP' started by Vovo4ka, 9 Mar 2018.

  1. Vovo4ka

    Vovo4ka Member

    Joined:
    24 Nov 2016
    Messages:
    44
    Likes Received:
    8
    Reputations:
    0
    Имеется локальный XAMPP сервер. Необходимо записывать тело POST-запроса (wget --post-data='a=Helloworld&b=123' 127.0.0.1) в отдельный файл. Однако ни модули Apache (mod_dumpio, mod_dumpost), ни php-скрипты не дают никакого эффекта. Как реализовать подобное?
     
  2. lifescore

    lifescore Elder - Старейшина

    Joined:
    27 Aug 2011
    Messages:
    651
    Likes Received:
    511
    Reputations:
    72
    Логировать wget, -o / -a
    или средствами php(сервера) нужно?
     
  3. Jerri

    Jerri Elder - Старейшина

    Joined:
    12 Jul 2009
    Messages:
    136
    Likes Received:
    377
    Reputations:
    22
    Сначала:
    Code:
    a2enmod dump_io
    В конфиг апача:
    Code:
    DumpIOInput On
    DumpIOOutput On
    LogLevel dumpio:trace7
    Писать в error.log должно. Рестартнуть апач не забудь.

    Должны давать эффект. Если не дают - что-то не так настроено)

    P.S. Могу чуть позже на своем сервере проверить, если что.
     
    pas9x likes this.
  4. Jerri

    Jerri Elder - Старейшина

    Joined:
    12 Jul 2009
    Messages:
    136
    Likes Received:
    377
    Reputations:
    22
    100% рабочий и удобный способ, через mod_security
    Code:
    apt-get install libapache2-modsecurity
    apachectl -M | grep --color security
    
    Вывод второй команды, если всё ок: security2_module (shared)

    Code:
    mv /etc/modsecurity/modsecurity.conf{-recommended,}
    service apache2 reload
    
    После редактируем конфиг и приводим к следующему виду:
    /etc/modsecurity/modsecurity.conf
    Code:
    SecRuleEngine On
    SecAuditEngine on
    SecAuditLog /var/log/apache2/website-audit.log
    SecRequestBodyAccess on
    SecAuditLogParts ABIFHZ
    SecDefaultAction "nolog,noauditlog,allow,phase:2"
    SecRule REQUEST_METHOD "^POST$" "chain,allow,phase:2,id:123"
    SecRule REQUEST_URI ".*" "auditlog"
    
    Перезагружаем апач, читаем /var/log/apache2/website-audit.log, радуемся жизни.
     
  5. loidez

    loidez Member

    Joined:
    28 Feb 2018
    Messages:
    19
    Likes Received:
    7
    Reputations:
    0
    Не верю. Как ты делал?
     
  6. Vovo4ka

    Vovo4ka Member

    Joined:
    24 Nov 2016
    Messages:
    44
    Likes Received:
    8
    Reputations:
    0
    Спасибо, будем смотреть-пробовать :)