更新到 php 7 后如何修复 symfony 1.4 错误“Empty response header name, aborting request”

Posted

技术标签:

【中文标题】更新到 php 7 后如何修复 symfony 1.4 错误“Empty response header name, aborting request”【英文标题】:How to fix symfony 1.4 error "Empty response header name, aborting request" after updating to php 7 【发布时间】:2018-04-02 11:37:59 【问题描述】:

我最近将我的服务器更新为具有 apache2.4 和 php7.0 的 ubuntu 16 我的项目是使用 symfony 1.4 构建的,它在我的旧服务器(ubuntu 14、php5.x)上运行良好。现在在更新后突然停止工作,出现错误“Empty response header name, aborting request”。

【问题讨论】:

另外,API 可以很好地处理 JSON 数据作为响应 您使用的是哪个 symfony1 发行版? github.com/punkave/symfony1 的分支对其进行了一些 PHP7 兼容性更改。您能否发布您所看到内容的完整(呃)堆栈跟踪? 我试过你分享的发行版,但对我不起作用。 “对我不起作用”是什么意思?如果您分享不兼容性的详细信息,我们可以确保将其修复。 【参考方案1】:

我通过替换 php7 中删除的方法(例如 preg_replace() )更改了 Symfony 的一些核心文件,这些方法以某种方式导致了错误“Empty response header name, aborting request”。

但是,我通过使用https://launchpad.net/~ondrej/+archive/ubuntu/php 将 php7 降级到 5.6 解决了这个问题 现在一切正常。

【讨论】:

【参考方案2】:

在我的情况下,错误是由 sfViewConfigHandler 类 (lib/vendor/symfony/lib/config/sfConfigHandler.class.php) 的 addhtmlHead 方法生成的。

我修改了文件app/frontend/config/view.yml 删除默认值: http_metas: content-type: text/html 我在布局中添加了元标记。

【讨论】:

请用 S 更正 appS/frontend/config/view.yml 的路径。谢谢。

以上是关于更新到 php 7 后如何修复 symfony 1.4 错误“Empty response header name, aborting request”的主要内容,如果未能解决你的问题,请参考以下文章

Symfony 5 更新后 Laravel 7 电子邮件异常中断

Symfony 2.1.7 - 用户通过身份验证后更新安全令牌设置特定角色

如何在symfony项目中将php版本从7.0降级到5.6?

OSx 更新后如何修复损坏的 python 2.7.11

升级 PHP 版本后如何修复 Twig 文件中的 Html 标签问题

Eclipse Oxygen 不标记事件 - 如何修复?