1. A header location devi passare un url, php è un linguaggio server side, non ha idea di cosa sia javascript, tantomento dell'history della tua navigazione
2. Il comando Header va a modificare l'header della pagina quando questo non è stato ancora chiuso, se però tu hai già stampato qualcosa a video l'header è stato già chiuso, e il comando da un errore.
ciao