Antes de hacer una llamada a header() .. NO puede existir nada de HTML antes de la llamada a esa función ..
En realidad no es solo HTML sino cualquier cosa enviada al navegador .. Esas "cosas" son por ejemplo un simple espacio antes de <? (incluido los que tengas en esos conexion.php y login.php que llamas con tu include() ...). También es consideredo "cabeceras" enviadas un salto de linea en alguno de tus include() o en ese própio scirpt ..
Si te fijas en el error que te dá PHP .. veras que dice:
Cita: output started at c:\apache\htdocs\autentificacion\login.php:32) in
Así que mira en tu login.php linea 32 que ahí tienes algun echo .. print .. printf o simple HTML o algun espacio o salto de línea antes o despues de <? ?>
Un saludo,