mmm..... suena raro lo ultimo...
 
(yo siempre he usado $_SERVER['SERVER_NAME'] para eso, y funciona con o sin sub dominio) 
obvio, si tiene un sub dominio la URL (como 
www.) aún así lo agrega la super variable de PHP  
Referencia:  
http://www.php.net/variables.predefined   
pero bueno, el comportamiento de $_SERVER, $HTTP_*_VARS y $FOO 
se debe a la configuración del PHP y de la versión en si, a partir de PHP4 ya se deben usar $_* en lugar de $HTTP_*_VARS ...  
 Código PHP:
    $HTTP_POST_VARS['SERVER_NAME']; // MAL (se debe a register_long_arrays=ON)
$SERVER_NAME; // MAL (se debe a register_globals=ON)
$_SERVER[SERVER_NAME]; // PESIMO :( (ya que no existe la constante SERVER_NAME)
$_SERVER['SERVER_NAME']; // BIEN :P (así debería usarse siempre) 
    
  
bueno, para que no tengas que adaptarte a cada sistema... porque no los configuras del mismo modo???   
http://www.forosdelweb.com/f18/forma...hp-ini-589310/