Haciendo un Script en PHP quise redireccionar al cliente y me doy con la sorpresa que me genera el siguiente error y no redirecciona, este es un error que generalmente lo encuentras cuando llamas a un archivo de funciones usando require o similar:

Warning: Cannot modify header information – headers already sent by (output started at /home/miweb/funciones.php:144) in /home/miweb/index.php on line 239

luego de leer mucho en internet definitivamente el problema es que en algún momento estoy enviando un echo, o print o un dato al cliente y al tratar de redireccionar me lanza el error

luego de buscar un poco mi código me todo con lo siguiente en el archivo de funciones.php

<?//Todo el contenido del archivo en PHP
?>

y encontré cual era el bendito problema 😀

A simple vista no hay error pero en mi caso (y supongo que a muchas personas) es que luego de cerrar el ?> hay un espacio en blanco el cual cuando hago el require_once o include lo interpreta como código HTML (se envía un dato y por tanto la cabecera) y cuando luego hago la redirección pues genera el error