Me respondo a mi mismo, aunque no para dar la solucion sino para detallar algo. La funcion muestraInfo() deberia ser:
Código PHP:
function muestraInfo(){
if(peticion_ajax.readyState == 4 && (peticion_ajax.status == 200 || window.location.href.indexOf("http")==-1)){
var x = peticion_ajax.responseXML.documentElement;
alert(x.getElementsByTagName("nombre").firstChild.nodeValue);
}
}
Sin embargo, esto me da "x is null". A mi esto me hace pensar que puede que el archivo no se lea bien, pero si el valor de readyState es 4 y el de status es 200, no deberia haber ningun problema, ¿no?