所以我正在使用PHP 5.6并构建一个Laravel 5.1 API并构建一个Android应用程序。
当我尝试从android模拟器发送帖子请求时,我得到以下消息以及正确的数据/响应:
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
Warning: Cannot modify header information - headers already sent in Unknown on line 0.
我知道错误出现的原因,但似乎无法解决。
正常修复方法是将always_populate_raw_post_data设置为-1,但这不起作用。
我正在考虑升级到已删除$ HTTP_RAW_POST_DATA的更高版本的php。
任何帮助/建议都将不胜感激。
答案 0 :(得分:0)
升级到php 7.0修复它按预期,我真的想避免升级,但似乎这是我的唯一修复,因为只是设置' always_populate_raw_post_data'到' -1' 在PHP 5.6中没有为我工作。
答案 1 :(得分:0)
如果您仍然收到警告(就像我一样),请运行:
<?php phpinfo() ?>
并查找已加载配置文件键的值。
就我而言,WAMP使用的
php.ini
位于:
C:\wamp64\bin\apache\apache2.4.23\bin\php.ini
(符号链接到
C:\wamp64\bin\php\php5.6.25\phpForApache.ini
)
编辑此文件并设置always_populate_raw_post_data = -1
,然后重新启动服务器。