Недавно я обновил свой производственный сервер до Ubuntu 14.04 и PHP 5.6, и теперь я получаю предупреждения в своем журнале ошибок:
2014/10/31 10:42:45 [error] 17128#0: *46238 FastCGI sent in stderr: "PHP message: PHP Deprecated: Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a future version. To avoid this warning set 'always_populate_raw_post_data' to '-1' in php.ini and use the php://input stream instead. in Unknown on line 0" while reading response header from upstream, client: 24.123.216.42, server: example.com, request: "POST /api/notes HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "example.com", referrer: "https://example.com/admin/"
I прочитать документацию, а также этот несколько актуальный вопрос: Undefined variable: HTTP_RAW_POST_DATA. Однако я не могу понять, почему это уведомление записывается. Насколько я могу судить, я не использую $HTTP_RAW_POST_DATA
где-либо в моей кодовой базе. Я пробовал:
find . -exec grep "HTTP_RAW_POST_DATA" {} \; -print 2>/dev/null
из корневого каталога моего проекта (включая все каталоги поставщиков), но я не нахожу совпадений.
I читайте больше о always_populate_raw_post_data
и кажется, что $HTTP_RAW_POST_DATA
следует заполнять, только если параметр always_populate_raw_post_data
установлен на ПРАВДА. Я проверил свой phpinfo()
, а параметр установлен на 0.
Если я явно не вызываю $HTTP_RAW_POST_DATA
и always_populate_raw_post_data
установлен в 0
, почему я получаю эти уведомления в своем журнале ошибок? Что делает установка always_populate_raw_post_data
в -1
?