Originariamente inviato da codencode
Ok, non ci avevo pensato,
allora hai controllato che prima dell'header non ci siano output?
Quoto: nota che viene considerato output anche solo uno spazio bianco, un a capo o qualsiasi altro carattere, anche quando è DOPO il ?> finale di un file incluso...

L'idea è che se stai eseguendo la index.php, le sue prime righe, prima di qualsiasi altra cosa, inclusioni, tutto, proprio le prime, siano:

<?php
ob_start();

.....

in questo modo sei certo che qualsiasi file tu includa dopo, non ti inficerà la possibilità di usare header.

in più, spesso header("Location:xxx") funziona bene SOLO se xxx è una url assoluta, per capirci se vuoi andare a index.php nella radice dl tuo sito da un'altra pagina nella home del tuo sito, in teoria dovrebbe funzionare anche

header("Location: index.php")

o

header("Location:/index.php")

in pratica funziona bene e sempre solo :

header("Location:http://www.tuosito.it/index.php")

tutte le altre a volte non funzionano.