Perchè quando apri una sessione non devi aver inviato niente al browser (anche i tag html di apertura pagina sono output).

Quindi se scrivi session_start() ad inizio pagina, prima di qualsiasi cosa che deve essere inviata al browser funzionerà. Ciao!