【问题标题】:Laravel error: ob_end_flush(): failed to send buffer of zlib output compression (0)Laravel 错误:ob_end_flush(): failed to send buffer of zlib output compression (0)
【发布时间】:2014-07-17 22:14:18
【问题描述】:

每次出现错误时,例如:尝试访问非对象的属性时,我都会收到以下消息:

ob_end_flush(): 发送zlib输出压缩缓冲区失败(0)

打开:/home/admin/domains/mysite/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Response.php

$previous = null;
$obStatus = ob_get_status(1);
while (($level = ob_get_level()) > 0 && $level !== $previous) {
    $previous = $level;
    if ($obStatus[$level - 1]) {
        if (version_compare(PHP_VERSION, '5.4', '>=')) {
            if (isset($obStatus[$level - 1]['flags']) && ($obStatus[$level - 1]['flags'] & PHP_OUTPUT_HANDLER_REMOVABLE)) {
                ob_end_flush();
            }
        }
    }
}

我尝试在php.ini中设置:

zlib.output_compression = Off
zlib.output_handler =

但它没有帮助。

我正在使用Laravel 4.1

有谁知道如何解决这个问题?

【问题讨论】:

标签: php symfony laravel laravel-4


【解决方案1】:

如果您在视图中使用@secction,请在该部分下方使用@stop 来停止该部分区域

【讨论】:

【解决方案2】:

不确定这是否有帮助,但我遇到了这个问题,并认为我会分享为我解决的问题,但同样的错误。这是由于尝试设置通过节调用传入的空变量引起的。要修复它,只需使用 isset 检查。

@isset($var)
  @section('header', $var)
@endisset

【讨论】:

    【解决方案3】:

    不确定这是否对任何人有帮助,我在创建 pdf 时使用 laravel 收到此错误。解决方案是将控制器中返回的 2 个数据变量添加到 view-pdf.blade.php。

    【讨论】:

      【解决方案4】:

      检查您的刀片文件中是否缺少@end 语句,例如@endsection

      【讨论】:

        猜你喜欢
        • 2022-12-19
        • 2021-05-15
        • 2021-12-09
        • 2022-12-12
        • 2015-05-21
        • 1970-01-01
        • 2022-12-28
        • 1970-01-01
        • 2013-07-13
        相关资源
        最近更新 更多