Bueno, yo supongo que lo primero que deberías hacer sería mirar el manual de referencia de PHP, antes que nada...
http://php.net/manual/es/function.header.php
Es lo que yo hice, al menos, y alli me encontré con esto:
Cita: Existen dos casos especiales en el uso de header. El primero el encabezado que empieza con la cadena "HTTP/" (las mayúsculas no son importantes), es utilizado para averiguar el código de status HTTP a enviar. Por ejemplo,
si se tiene Apache configurado para usar un script en PHP para controlar las peticiones a ficheros no encontrados (usando la directiva ErrorDocument), querrá asegurarse de que el script genera el código de status que corresponde.
El segundo caso especial es el encabezado "Location:" No solamente envía el encabezado al navegador, sino que también devuelve el código de status (302) REDIRECT al navegador a no ser que el código de status 201 o 3xx ya haya sido enviado.
Código PHP:
Ver original<?php
header("Location: http://www.example.com/"); /* Redirección del navegador */
/* Asegurándonos de que el código interior no será ejecutado cuando se realiza la redirección. */
?>
Vale decir, no funciona por si mismo. DEbes tener el WebServer Apache configurado para eso, de lo contrario no sirve para NADA.
¿Está mas claro ahora?