1)
Usar un Iframe es lo que es mala práctica. La realidad es de que siento ese comentario completamente absurdo.
---
2) La opción de mpozo es la de usar una librería Javascript que importa el otro documento dentro del html.
La librería es esta:
http://www.w3schools.com/lib/w3data.js
Y entonces jala el contenido de menu.html usando el atributo gnenerado: w3-include-html.
Esta opción no necesita estar en un servidor. Aunque la realidad es de que casi nadie va a desactivar el JavaScript, depende de él.
---
Me regreso a la pregunta del servidor.
Normalmente un servidor lo puedes configurar para que también "interprete y procese" los archivos con extensión html, pero nativamente si tienen extensión php es cómo los procesa. Lo puedes cambiar después, pero tal vez en el servidor final donde subes tus archivos, no puedas hacer el mismo ajuste.
Proceso para XAMPP:
1) El programa se instala en c:/xampp
2) Y los archivos que tú vas a ver están en c:/xampp/htdocs
En esa carpeta ya tienes algunas cosas dentro. Puedes hacer una nueva carpeta y aventar todo lo de ahí en esa carpeta nueva.
c:/xampp/htdocs/EstaCarpetaEsLoQueVenia
Al iniciar el xampp y escribir en tu navegador 127.0.0.1 vas a ver esa carpeta.
3) Haz ahora dos archivos sumamente simples:
a)
menu.htm
b) y otro
Prueba.php con:
Pon los dos en esa carpeta.
4) Ahora, actualiza tu navegador y pícale a Prueba.php.