OpenLayers es la librería para visualización de mapas via web por excelencia. Consiste en una API javascript con objetos que permiten manejar todo tipo de capas (kml, geoJSON, wms,etc), trabajar con eventos (hacer click en el mapa) y hasta poner marcadores y popups entre muchas otras cosas.
Para empezar con OpenLayers los siguientes links son de mucha utilidad:
http://openlayers.org/ Página principal de OpenLayers
http://www.linux.com/archive/feature/154814 Ejemplos básicos (aparte de los ejemplos de la página principal)
http://workshops.opengeo.org/openlayers-intro/ Workshop para iniciar en OpenLayers
http://wiki.osgeo.org/wiki/Openlayers:_las_herramientas_disponibles_por_defecto Descripción en español de las herramientas que vienen en la API de OpenLayers
Para descargar el código completo seguir el enlace: Demo de OpenLayers Sigue leyendo