XMLHttpRequest status 0 (responseText está vacío)

No se pueden obtener datos con XMLHttpRequest (estado 0 y responseText está vacío):

xmlhttp=new XMLHttpRequest();
xmlhttp.open("GET","http://www.w3schools.com/XML/cd_catalog.xml", true);
xmlhttp.onreadystatechange=function() 
{
  if(xmlhttp.readyState==4)
    alert("status " + xmlhttp.status);
}
xmlhttp.send();

Atiende "estado 0".

La misma situación con la solicitud localhost (cd_catalog.xml se guarda como un archivo local)

xmlhttp.open("GET","http://localhost/cd_catalog.xml", true);

Pero con la solicitud de IP localhost

xmlhttp.open("GET","http://127.0.0.1/cd_catalog.xml", true);

y con la solicitud de archivo local

xmlhttp.open("GET","cd_catalog.xml", true);

todo está bien (estado 200)

¿Qué puede causar el problema (estado = 0) con la solicitud en línea?

PS: Live HTTP Headers muestra que todo está bien en los 4 casos:

  HTTP/1.1 200 OK
  Content-Length: 4742

PS2: servidor web local Apache en VMWare (sistema operativo host Win7, sistema operativo invitado Ubuntu, adaptador de red - NAT). Navegador: Firefox.

Respuestas a la pregunta(18)

Su respuesta a la pregunta