При правильной структуре header должен идти ДО всех выводов в браузер. Иначе будет справедливая ошибка.