更新到 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

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

我通过替换 php7 中删除的方法更改了 Symfony 的一些核心文件,例如 preg_replace() 不知何故导致了错误 "Empty response header name, aborting request".

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

在我的例子中,错误是由 sfViewConfigHandler class (lib/vendor/symfony/lib/config/sfConfigHandler.class.php) 的 addHtmlHead 方法生成的。

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