2011-05-23 21 views
9

¿Podría alguien explicar qué es lo que está mal con este código PHP? (PHP versión 5.3.5)PHP: encabezado mal formado

<?php 
    header('Bad Request', true, 400); 
    exit; 

consigo un estado 500 en lugar de 400. Y en el registro de errores de apache, recibo

encabezado con formato incorrecto desde el guión. Bad header = Bad Request: listener.php

¿Qué estoy haciendo mal aquí? ¿He entendido mal the docs?

Respuesta

24

usted tiene que escribir:

header('HTTP/1.0 400 Bad Request', true, 400); 
+0

Gracias! ¿Por qué no podría haberse dado cuenta solo? * Suspiro * – Svish

+2

Me parece que realmente no necesita los dos parámetros opcionales para los códigos de respuesta HTTP - 'header ('HTTP/1.0 400 Bad Request') 'funciona igual de bien. – HorusKol

+0

@HorusKol, Sí, pero debo decir que me parece bastante tonto. El código de estado es lo único que debería ser necesario. ¿No debería PHP saber el texto correcto y las cosas en sí mismas? – Svish

Cuestiones relacionadas