Hallo Steve!
wenn ich jetzt das Script lokal aufrufe (zb. http://localhost/script.php) sollte die Abfrage in [else] springen und
TEST3:http_host=http://localhost/script.php
(Fast) genau das passiert, nachdem ich das Script aus deinem Posting kopiert, die [?php ?] durch <?php ?> ersetzt, und das in meinem Browser aufgerufen habe.
Aber mir ist Aufgefallen was das Problem ist:
Dein System erzeugt gar kein $HTTP_HOST. Das muss es nämlich nicht. (Ungewöhnlich aber möglich.)
Was du im <title> gesehen hast ist das, was der Browser immer dann anzeigt, wenn er keinen Title hat: nämlich die URL.
Mach mal ein kurzes Script:
<?
phpinfo();
?>
und ruf das bei einmal bei dir lokal auf, dann lade es hoch zu deinem Provider und rufe es dort auf. Das zeigt dir (u.a.) an, welche (sog. Umgebungs)Variablen du jeweils zur Verfügung hast. Irgendwo ist da hoffentlich der Host bei.
Gruss,
Carsten