*由于php7的出现带来大幅的性能提升,想体验下新版本带来的特性,因此做了升级。 发现在网站中请求接口时发生错误,排查后把解决方法记录下来

升级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

Warning: Cannot modify header information - headers already sent in Unknown on line 0

通过查询php官网后得知,在php5.6.X以后版本某些特性已经被废弃,详情查看:

http://php.net/manual/zh/migration56.deprecated.php

原因是:

$HTTP_RAW_POST_DATA 和 always_populate_raw_post_data使用 always_populate_raw_post_data 会导致在填充 $HTTP_RAW_POST_DATA 时产生 E_DEPRECATED 错误。
请使用 php://input 替代 $HTTP_RAW_POST_DATA, 因为它可能在后续的 PHP 版本中被移除。
设置 always_populate_raw_post_data 为 -1 (这样会强制 $HTTP_RAW_POST_DATA 未定义,所以也不回导致 E_DEPRECATED 的错误) 来体验新的行为。

修复方法:

1、修改php的配置文件,找到php.ini。把 always_populate_raw_post_data 开启,并设置为 -1 。

always_populate_raw_post_data = -1

2、如果项目中有用到$HTTP_RAW_POST_DATA的更改为:

原来是 $info = $HTTP_RAW_POST_DATA;更改为 $info = file_get_contents('php://input');

相关阅读:$_POST、$HTTP_RAW_POST_DATA 和 php://input有什么不同

转载于:https://www.cnblogs.com/open-i/p/6667008.html

升级php7后的报错处理相关推荐

  1. php报错处理,关于升级php7后的报错处理

    [摘要] PHP即"超文本预处理器",是一种通用开源脚本语言.PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言.PHP独特的语法混合了C.Java.Perl以及 ...

  2. 升级gcc后glibc报错

    升级完gcc后执行c++报错: /usr/lib/libstdc++.so.6: version 'GLIBCXX_3.4.15' not found 解决方法: 1. 查看libstdc++.so. ...

  3. node升级版本后vue报错

    npm i node-sass -D 转载于:https://www.cnblogs.com/FengWenQi/p/9429953.html

  4. android apt最新版本,解决Android studio 2.3升级到Android studio 3.0 后apt报错问题

    解决Android studio 2.3升级到Android studio 3.0 后apt报错问题 发布时间:2020-09-16 19:59:42 来源:脚本之家 阅读:62 作者:哈特中尉 1. ...

  5. AS升级4.1后插件报错的问题

    AS升级4.1后插件报错的问题 Plugin "GsonFormat" is incompatible (supported only in IntelliJ IDEA). Plu ...

  6. AS升级3.1 编译报错:The SourceSet 'instrumentTest' is not recognized by the Android Gradle Plugin.

    AndroidStudio升级到3.1后编译报错:The SourceSet 'instrumentTest' is not recognized by the Android Gradle Plug ...

  7. 使用cocopods安装Alamofire后各种报错

    使用cocopods安装Alamofire后各种报错,大概有一百多个吧,好像是因为swift版本问题 我看到gitHub上面Alamofire是支持swift3的,我的xcode版本也不低,就放弃了更 ...

  8. php7链接数据库报错The server requested authentication method unknown to the client

    php7链接数据库报错The server requested authentication method unknown to the client 主要原因 是因为 mysql 8.0 升级了密码 ...

  9. Chrome升级91扩展程序报错Tabs cannot be edited right now (user may be dragging a tab)解决方法

    本文主要介绍Chrome浏览器升级91后,使用扩展程序(extension)报错时,报错:Unchecked runtime.lastError: Tabs cannot be edited righ ...

最新文章

  1. poj1860(Bellman-Ford算法)
  2. FPGA的历史、现状和未来
  3. RHEL6入门系列之二十七,源码安装及软件安装综合实例
  4. 【复习资料】单片机与嵌入式系统原理及应用
  5. [uoj24]缩紧优化
  6. python面试题总结(5)--数据类型(字典)
  7. mysql行转列函数_一个小知识点-Hive行转列实现Pivot
  8. 字符串匹配算法之KMP
  9. appcrash事件怎么解决_突发事件中身心容易紧张焦虑,该如何控制心理压力与情绪?...
  10. 【译】三层架构代码生成器(NetTierGenerator)
  11. 第1章 Spring Cloud 构建微服务架构(一)服务注册与发现
  12. Linux中的samba服务和ftp服务
  13. 如何检查Mac的电池健康状况
  14. C语言打印九九乘法表
  15. 济南2017年春考计算机考试试题,2017年山东省春季高考机械试题.pdf
  16. java 中super_Java中的super
  17. java 中文词频统计_Java实现中文词频统计
  18. 色彩混合模型——两种三原色
  19. 网络爬虫爬取时,被封的原因以及防止被封IP策略
  20. linux下部署项目,下载文件时,中文文件名乱码问题

热门文章

  1. anemometer mysql_十分钟部署Anemometer作为Mysql慢查询可视化系统
  2. 3.java基础--- if、switch语句编程题
  3. 【分布式任务调度】(三)XXL-JOB调度中心对执行器的上下线感知实现原理
  4. 【虾仁猪心!!】--1
  5. 【Python】Flask学习笔记
  6. 群联PS3111+7DDL+JMS578转接板,开卡pSLC,附PS3111量产工具
  7. mac时间机器文件服务器,使用时间机器备份文件 - 处理文件和文件夹 - macOS使用手册...
  8. echarts 添加百分号%
  9. IEEE帐号的创建和ORCid
  10. 我是如何拿到腾讯offer的(干货面经+经验分享)