Instalación de MS4W

=Instalación de MS4W=

Como servidor WMS hemos escogido UMN Mapserver, un potente servidor de mapas desarrollado por la Universidad de Minnesota. Este proyecto es uno de los pilares del GFOSS desde hace años. Para ofrecer una experiencia más sencilla al publico neófito, hemos escogido el paquete para MS Windows de UMN Mapserver. Este paquete se llama MS4W (MapServer for Windows).

Qué es MS4W
El fin de este paquete de software es ofrecer a los usuarios de MapServer de todos los niveles un entorno de trabajo sobre Windows de fácil instalación, útil para dar clases y talleres, o preparar aplicaciones pero no para un entorno de producción real. Es también un entorno para paquetes de aplicaciones que funcionan sobre MapServer. La pagina oficial de MS4W se encuentra en:
 * http://www.maptools.org/ms4w/



La comunidad de software libre para la geomática (OSGeo) está trabajando activamente en otro proyecto que incluya los paquetes más conocidos del software SIG (no sólo de componentes de servidor sino también utilidades y clientes de escritorio). Este proyecto, recién comenzado se llama OSGEO4W y su página principal es:
 * http://trac.osgeo.org/osgeo4w/

Descarga de MS4W
La página de descarga del paquete se encuentra directamente en el sitio web o en este enlace:
 * http://www.maptools.org/ms4w/index.phtml?page=downloads.html

Se recomienda, para este curso, la descarga de los siguientes paquetes:
 * setup.exe Installer - ms4w-2.2.9-setup.exe 19 MB
 * MapServer Itasca Demo Application - mapserv_demo_ms4w.zip 9 MB

MapServer Itasca Demo Application
Para completar la clase necesitaremos el juego de datos libres Itasca.

NOTA la versión del software puede ser ligeramente diferente. En este caso el nombre podría cambiar en su parte numérica. En general este cambio no debe dar problemas con este curso.

Procedimiento de instalación de MS4W
Una vez que tenemos el fichero ms4w-2.2.9-setup.exe en nuestro ordenador podemos lanzar el proceso de instalación con un doble clic sobre su icono.

Primera ventana: Installation Options
Aparece una pequeña ventana que nos ofrece una lista de paquetes para instalar. Los primeros tres checkbox son fundamentales para que la aplicación funcione correctamente a lo largo del curso.
 * MS4W base files
 * Specify Apache Port
 * Install and start Apache Service

Una vez seleccionados se puede clicar sobre el botón Next.



Segunda ventana: Installation Folder
La segunda ventana de configuración indica el camino a la carpeta de instalación. El instalador ofrece por defecto C:\Program Files (o C:\Archivos de programa) pero resulta más conveniente indicar C:\ para la compatibilidad con otros paquetes MS4W más antiguos. Si ponemos C:\ el instalador creará una carpeta C:\MS4W con todos los ficheros. Una vez configurado se puede clicar sobre el botón Next.

Tercera ventana: Apache Port
El puerto del servidor web Apache ha de ser definida con criterio. Algunos técnicos están acostumbrados a utilizar un servidor web en su entorno de trabajo y añadir otro (como el incluido en MS4W) puede provocar problemas. Para estar más tranquilos vamos a escoger un puerto generalmente libre, el 9000. Una vez configurado, clicar sobre el botón Install.



Cuarta ventana: Completed
El instalador si no se produjeron problemas durante el proceso acaba con este mensaje:



Procedimiento de instalación del juego de datos Itasca
Una vez bajado el fichero podemos proceder a su instalación. Como MS4W no tiene un verdadero instalador sino que realmente copia los ficheros en una carpeta (para nosotros C:\MS4W), sus módulos necesitan sólo ser copiados en el lugar apropiado dentro su estructura.

Con un doble clic sobre el fichero comprimido de Itasca (mapserv_demo_ms4w.zip</tt>) se visualiza su contenido.



Se selecciona la carpeta ms4w</tt>, se copia (ctrl+c) y se pega en la carpeta C:\</tt>. Debes confirmar la sobre escritura para todos los ficheros (Yes to all o Sí a todos)



Para estar seguro de que la instalación del paquete se ha producido con éxito se tiene que reiniciar el servidor web. El en menú de inicio de Windows, se busca la carpeta MS4W, luego Apache y en fin el comando MS4W-Apache-restart.



= Configuración del servidor WMS=

Para este curso, el proceso de configuración del servidor WMS consistirá en:


 * comprobar el fichero map de configuración de MapServer
 * mostrar con el navegador web las llamadas fundamentales al servidor
 * getCapabilities
 * getMap
 * getLegend

Comprobando la instalación de MS4W
Después de la instalación de MS4W podemos comprobar su efectividad mirando la dirección web que le hemos asignado. Para eso abrimos un navegador web' (p.ej. Mozilla Firefox, Iternet Explorer, Opera'', etc.) y teclearemos esta dirección:
 * http://localhost:9000



En definitiva esta es la página que deberíamos encontrar:



Comprobando el servicio WMS
Con la instalación de MS4W tenemos MapServer y sus capacidades de servidor WMS en nuestro ordenador. El paquete Itasca nos ofrece los datos para evaluar si servidor WMS funciona correctamente. Ahora es el momento de comprobar si el servidor WMS contesta como esperamos.

WMS es un estándar para la comunicación de Información Geográfica entre sistemas informáticos. Por eso tiene unas llamadas muy definidas y utiliza URLs (direcciones web) para pasar todos los parámetros que se necesiten para obtener la respuesta deseada.

Las tres llamadas más usadas son:
 * getCapabilities
 * getMap
 * GetLegendGraphic

getCapabilities
Esta llamada nos ofrece las descripción general de lo que ofrece el servidor. La página que debes visitar es:
 * http://localhost:9000/cgi-bin/mapserv.exe?service=WMS&request=getCapabilities&map=/ms4w/apps/mapserv-demo/itasca.map&version=1.0.0



Hay muchas cosas a destacar:
 * la dirección que hemos puesto esta compuesta por:
 * la dirección de servidor UMN Mapserver:  http://localhost:9000/cgi-bin/mapserv.exe? </tt>
 * el parámetro que indica qué queremos el servicio WMS: service=WMS</tt>
 * el parámetro que define qué tipo de respuesta necesitamos: &request=getCapabilities</tt>
 * el parámetro que especifica qué fichero de mapas queremos que el servidor utilice: &map=/ms4w/apps/mapserv-demo/itasca.map</tt>
 * el parámetro que indica la versión del servicio: &version=1.0.0</tt>
 * el servidor nos contesta con un fichero XML con la descripción de los juegos de datos ofrecidos por el servidor según el estándar OGC WMS.

getMap
Esta es la llamada más utilizada. Una vez se sabe qué capa queremos, es getMap quien devuelve una imagen con el mapa deseado. Así, por ejemplo, en nuestro servidor local podemos solicitar un mapa de los datos Itasca con la siguiente url:
 * http://localhost:9000/cgi-bin/mapserv.exe?map=/ms4w/apps/mapserv-demo/itasca.map&&REQUEST=GetMap&SERVICE=WMS&VERSION=1.1.1&LAYERS=drgs&SRS=EPSG:4326&BBOX=-94.4981,46.9722,-92.988,47.9455&WIDTH=551&HEIGHT=356&FORMAT=image/png&STYLES=default&TRANSPARENT=TRUE

GetLegendGraphic
Muchos clientes de mapas manejan también las leyendas proporcionadas por el servidor de mapas. Por eso un servidor de mapas bien configurado devuelve también la leyenda de una capa respondiendo a la llamada GetLegendGraphic.
 * http://localhost:9000/cgi-bin/mapserv.exe?map=/ms4w/apps/mapserv-demo/itasca.map&REQUEST=GetLegendGraphic&SERVICE=WMS&VERSION=1.1.1&LAYER=drgs&FORMAT=image/png

Comprobar el fichero map (mapfile)
Los mapfiles son los ficheros que describen la configuración del servidor de mapas para UMN Mapserver. La instalación por defecto del paquete Itasca Demo pone un mapfile casi completo, sólo le faltan un par de cambios para funcionar perfectamente.

Para editar el fichero sólo se necesita un editor de texto, por ejemplo: Notepad++ es un completo editor de texto, que además es Software Libre y nos ofrece todo lo que necesitamos en nuestras clases.
 * http://notepad-plus.sourceforge.net/es/site.htm

NOTA: es importante que el editor de texto no sea Word u otros editores que utilizan texto enriquecido. Cualquier editor de texto sencillo como Notepad++ será suficiente.

Abrir el mapfile
Con el editor abre el fichero map que se encuentra en C:\ms4w\apps\mapserv-demo\itasca.map</tt>

Objeto PROJECTION</tt>
En la línea 13 cambiar: #  # Projection definition, consult the PROJ.4 documentation for parameter discussion #  # PROJECTION #  "proj=utm" #  "ellps=GRS80" # "zone=15" #  "north" # "no_defs" #  #   OR: #  #   "init=epsg:26915" # END

por: #  # Projection definition, consult the PROJ.4 documentation for parameter discussion #   PROJECTION #  "proj=utm" #  "ellps=GRS80" # "zone=15" #  "north" # "no_defs" #  #   OR: "init=epsg:26915" END

NOTA: en el mapfile el carácter almohadilla (#</tt>) al principio de línea inicia un comentario. Mapserver nunca lee ni interpreta el texto que sigue a #</tt>.

WMS_ONLINERESOURCE</tt>
En la línea 76: WMS_ONLINERESOURCE " http://127.0.0.1/mapserv-demo/index.html "
 * 1) change this value to match your setup

cambiar la url por: WMS_ONLINERESOURCE " http://localhost:9000/cgi-bin/mapserv.exe?map=/ms4w/apps/mapserv-demo/itasca.map "
 * 1) change this value to match your setup

WMS_SRS</tt>
En la linea 78 cambiar: WMS_SRS "EPSG:26915" con: WMS_SRS "EPSG:26915 EPSG:4326" esto permite al mapserver ofrecer el servicio WMS con dos proyecciones de output.

=Autores= =Licencia=
 * Lorenzo Becchi
 * Jorge Gaspar Sanz Salinas
 * la licencia por este articulo es: Creative Commons Attribution 3.0 License (http://creativecommons.org/licenses/by/3.0/deed.es).
 * esta licencia permite:
 * copiar, distribuir y comunicar públicamente la obra
 * hacer obras derivadas
 * bajo estas condiciones:
 * Reconocimiento. Debe reconocer los créditos de la obra de la manera especificada por el autor o el licenciador (pero no de una manera que sugiera que tiene su apoyo o apoyan el uso que hace de su obra).
 * Al reutilizar o distribuir la obra, tiene que dejar bien claro los términos de la licencia de esta obra.
 * Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor
 * Nada en esta licencia menoscaba o restringe los derechos morales del autor.

=Duración= Por esta clase se evalúa una duración de X horas