perchè con ob_start hai ^^aperto un buffer
dove viene immagazzinato l'output e quindi non spedito^^(detto in parole spicciole)

in questo modo quando inizializzi la sessione non hai nessun output prima