Estoy usando la versión delgada 3.8 y quiero deshabilitar outputBuffering y mostrar todos los errores: El siguiente es mi sencillo programa Hello World.
require_once(dir.'/vendor/autoload.php'); $configuration = [ 'settings' => [ 'displayErrorDetails' => true, 'outputBuffering' => false, ], ]; $app = new \Slim\App($configuration); // Add route callbacks $app->get('/', function ($request, $response, $args) { echo "here"; return $response->withStatus(200)->write('Hello World!'); }); // Run application $app->run();Si comento echo "aquí"; entonces funciona bien. Pero este código arroja una excepción: error interno 500 que dice "Datos inesperados en el búfer de salida. Tal vez tenga caracteres antes de una apertura". ¿Alguien puede decirme qué está mal aquí?
Está funcionando según lo previsto. Debe agregar addContentLengthHeader => false a su clave de settings en $configuration .
Establecer outputBuffering en false significa que el objeto de respuesta no conoce ningún dato que repita. Por lo tanto, cuando se trata de agregar automáticamente el encabezado de longitud de contenido, nota una falta de coincidencia y obtiene el error "Datos inesperados en el búfer de salida". Por lo tanto, debe deshabilitar la configuración automática del encabezado de tipo de contenido.