Version 1.6

 Note pour l’installation et la configuration de MDweb (scripts – bases de données)

 Plateforme Windows

 

 

Préambule : La présente note propose de décrire dans le détail les opérations nécessaires à l’installation manuelle des scripts et des bases de données relationnelles de MDweb. Ne sont pas traitées l’installation et la configuration des composants nécessaires à son fonctionnement.

 

Sommaire

 

 

 

 

•   Apache 1.3.x ou 2.0.x et module PHP 5.x.

Le module PHP pour Apache doit être activé avec les extensions complémentaires suivantes :

O php_zip

O php_pgsql

O php_xsl

O php_curl

o  php_gd ou php_gd2

O php_mapscript (4.10)

 

Pour l’installation de la version 1.6 de MDweb, nous préconisons l’utilisation de la solution MS4W qui permet l’installation simultanée des composants Apache/PHP/MapServer (voir serveur cartographique Mapserver 4). Vous pouvez si vous le souhaiter installer la solution Wampserver 1.7.x. cela vous demandera par la suite d’installer indépendamment le serveur cartographique Mapserver ;

- Sur notre site :

http://www.mdweb-project.org/16/components/wamp5_1.7.2.exe

 

- Site sourceforge de Wampserver :

https://sourceforge.net/project/showfiles.php?group_id=116092

 

·         PostgreSQL 8.x avec sa cartouche spatiale PostGIS

 

- Sur notre site, PostgreSQL 8.1 et 8.2 sont téléchargeables :

http://www.mdweb-project.org/16/components/postgresql-8.1.1-1.zip

http://www.mdweb-project.org/16/components/postgresql-8.2.4-1.zip

 

- PostgreSQL français : http://www.postgresqlfr.org/ 

- PostGIS : http://www.postgis.fr/

 

·         Serveur cartographique Mapserver 4

 

Le serveur cartographique est utilisé dans cette version pour assurer le service de carte au client cartographique de MDweb. Deux possibilités pour installer Mapserver :

 

1. En partant de la solution MS4w (recommandé) qui propose l’installation de Apache/PHP/Mapserver. Pour plus d’informations sur les versions de ces composants :

 http://www.maptools.org/ms4w/index.phtml?page=README_INSTALL.html#mapserver-build-environment

- Sur notre site, MS4w (zip et installeur) sont téléchargeables :

http://www.mdweb-project.org/16/components/ms4w_2.2.3.zip

http://www.mdweb-project.org/16/components/ms4w-2.2.3-setup.exe  

- Site Maptools.org :

 http://www.maptools.org/ms4w/index.phtml?page=downloads.html

 La documentation pour l’installation de MS4W est disponible à l’adresse suivante :

http://www.maptools.org/ms4w/index.phtml?page=README_INSTALL.html

 

2. En partant de l’installation de Mapserver 4.1

Sur notre site, les binaires de MS4w :

http://www.mdweb-project.org/16/components/ms4w_2.2.3.zip

 

Sur le site de Mapserver :

http://mapserver.gis.umn.edu/download pour l’ensemble des versions ou http://mapserver.gis.umn.edu/download/current/ pour la version courante.

 

Configuration du serveur Apache

 

Configuration générale

 

Il n’y a pas de configuration spécifique à adopter pour le fonctionnement de MDweb. Il faut seulement veiller à la cohérence des valeurs de certaines directives du serveur Apache. La configuration du serveur Apache se trouve dans le fichier httpd.conf. Ces fichiers de configuration se situent dans les répertoires [nom volume]:ms4w\Apache\conf.

Il est nécessaire de vérifier dans le fichier httpd.conf les directives suivantes :

 

#

AddType application/x-httpd-php .php

AddCharset ISO-8859-1 .iso8859-1

DirectoryIndex index.html index.html.var index.php

#

 

Configuration liée à l’utilisation de Mapserver

 

L’utilisation de mapserver nécessite l’ajout de directives dans le fichier httpd.conf. Si vous installez la solution MS4w via l’installeur, ce fichier est adapté à une utilisation de Mapserver. Il vous ajoute les directives suivantes :

 

 #

 ScriptAlias /cgi-bin/ "/ms4w/Apache/cgi-bin/"

 ##

 ## Alias for MapServer tmp directory

 ##

 Alias /ms_tmp/ /ms4w/tmp/ms_tmp/

# set environment vars necessary for MapServer

SetEnv PROJ_LIB /ms4w/proj/nad/

SetEnv PATH /ms4w/bin

SetEnv PATH /ms4w/Apache/cgi-bin/

 

# parse MS4W apache conf files

include /ms4w/httpd.d/httpd_*.conf

 

# set GDAL_DATA environment variable to location of supporting gdal files

SetEnv GDAL_DATA "/ms4w/gdaldata"

 

# set GDAL_DRIVER_PATH environment variable for gdal plugins

SetEnv GDAL_DRIVER_PATH "/ms4w/gdalplugins"

 

# set the TMP environment variable that is necessary for the sqlite php extension

SetEnv TMP "/ms4w/tmp"

Configuration liée à l’utilisation de Mapserver dans MDweb

 

Pour l’utilisation spécifique de MapServer avec MDweb, vous devez y ajouter :

 

#

# configuration pour mapserver dans MDweb

#

SetEnvIf Request_URI "/wms" MS_MAPFILE=c:\ms4w\Apache\htdocs\mdweb-demo16\mapserver_carto\config\default\carto.map

#

ScriptAlias /wms "/ms4w/Apache/cgi-bin/mapserv.exe"

#

Alias /proxy/ /ms4w/Apache/htdocs/mdweb-demo16/mapserver_carto/mapbuilder/server/php/

#

            <Directory "/ms4w/Apache/htdocs/mdweb-demo16/mapserver_carto/mapbuilder/server/php/">

                  Allow from all

                  Options Indexes MultiViews

                  AllowOverride None

                        Order allow,deny

            </Directory>

#

# fin configuration de mapserver pour MDweb

#

 

Ces valeurs des directives sont à modifier selon le chemin de votre installation bien entendu…

 

Configuration du module PHP

 

L’utilisation de MDweb demande l’activation de 5 extensions PHP. Il s’agit :

o    php_xsl

o    php_curl

o    php_gd ou php_gd2

o    php_zip

o    php_pgsql

o    php_mapscript

 

Nouveau : l’extension php_gd est nécessaire à la version 1.6 pour permettre le redimmensionnement des fichiers jpg, gif ou png comme aperçu .

 

La configuration du module PHP se limite à la modification du fichier de configuration php.ini. Ce fichier se situe dans le répertoire [nom volume]:ms4w\Apache\cgi-bin. (cas de l’installation MS4w) Plusieurs directives sont à modifier. Les directives et les valeurs à modifier sont données dans le tableau suivant :

 

Directives PHP

Valeur par défaut

Valeur pour MDweb

register_globals

Off

On

magic_quotes_gpc

Off

On

max_execution_time

30

180

error_reporting

E_ALL

E_ALL & ~E_NOTICE[1]

short_open_tag

Off

On

file_uploads

Off

On

memory_limit

8M

16M

post_max_size

8M

16M

upload_max_filesize

1M

2M

allow_url_fopen

On

Off[2]

allow_call_time_pass_reference

Off

On

 

Pour permettre l'import de thesaurus volumineux (accessible dans le module Thesaurus de la partie Administration), il est préférable de mettre une valeur plus élevée pour la directive max_execution_time (par exemple 5000 pour un thesaurus comme Agrovoc).

 

Pour activer les extensions PHP nécessaires au fonctionnement de MDweb, vous devez dé commenter les lignes suivantes du fichier PHP :

 

 

extension=php_xsl.dll

extension=php_curl.dll

extension=php_gd.dll # ou extension=php_gd2.dll

extension=php_zip.dll

extension=php_pgsql.dll

extension=php_mapscript.dll

 

 

Il est aussi recommandé de vérifier la valeur de la directive default_charset dans le même fichier. Elle doit être cohérente avec le jeu de caractères adopté dans l’écriture des pages html. Pour les langues latines (portugais, français, espagnol, ..) elle doit être à :

 

default_charset = "iso-8859-1"

 

Attention que cette directive ne soit pas commentée, si c’est le cas, il faut la dé commenter pour qu’elle soit pris en compte.

Après la sauvegarde des modifications du fichier php.ini, le service Apache doit être redémarré pour que la nouvelle configuration soit prise en compte.

 


 

 

Tester la configuration d’Apache et du module PHP

 

Il est recommandé de vérifier la bonne prise en compte des modifications faites sur le serveur Apache et sur le module PHP. Pour cela, connectez vous à l’adresse http://localhost/phpinfo.php.  Si le fichier phpinfo.php n’existe pas, créez le comme suit :

<?

phpinfo() ;

?>

Deux manières d’installer les scripts MDweb

 

1. Télécharger l’archive :

 http://www.mdweb-project.org/16/scripts/mdweb-demo16-fr.zip

1. Décompactez l’archive dans le répertoire de publication de votre serveur apache. Dans le cas où vous avez installé MS4W, votre répertoire de publication sera

[nom volume]:\ms4w\Apache\htdocs\

2. A partir de votre Explorateur Windows, positionnez vous sur le répertoire crée [nom volume]: \ms4w\Apache\htdocs\, sélectionnez le et changer les propriétés (click droit > Propriétés), décocher lecture seule, Appliquer la modification à tous les sous-dossiers.

 

2. avec un client SVN :

Positionnez vous dans le répertoire dans lequel seront utilisés les scripts MDweb et tapez la commande :

> svn co http://svn.mdweb-project.org/mdweb1/public/scripts/1.6.x/ .

Cette commande vous permet de rapatrier les scripts comme une version de travail du dépôt SVN MDweb. Vous pourrez ainsi mettre à jour vos scripts en tapant la commande

> svn update

 

 

Afin d’apporter l’ensemble des fonctionnalités de la version 1.6, il est nécessaire de créer 3 bases de données sous PostgreSQL :

·   La BD MDweb (mdweb-demo16-fra) dans laquelle sera stockée les fiches de métadonnées

·   La BD géographique (geo-demo16) dans laquelle sera stocké les couches d’information géographiques utilisées dans le module cartographique. Cette base de données stocke deux couches vecteur : une couche des limites des pays du monde et une des océans

·   La BD thésaurus (thesaurus-fra) dans laquelle sont stockés les thésaurus de référence (par défaut : Agrovoc (FAO) un thésaurus de démonstration). Vous aurez par la suite la possibilité d’ajouter GEMET (EIONET) et les toponymes des communes, départements et région de la France. La base de données proposée stocke uniquement les termes français de ces thésaurus.

 

Téléchargement des scripts d’installation des bases de données

Télécharger les fichiers aux adresses indiquées et stocker les dans un répertoire de votre choix.

 

·   Création de la BD mdweb-demo16-fra :

http://www.mdweb-project.org/16/bd/metadata/CreationBD16-fra.bat

http://www.mdweb-project.org/16/bd/metadata/dump-mdweb-demo16-fra.sql  

 

·   Création de la BD geo-demo16

http://www.mdweb-project.org/16/bd/geodatabase/CreationBD-geo-demo16.bat

http://www.mdweb-project.org/16/bd/geodatabase/geo-demo16-windows-psql82.sql

 

·   Création de la BD thesaurus-fra

http://www.mdweb-project.org/16/bd/thesaurus/CreationBD-thesaurus-fra.bat

http://www.mdweb-project.org/16/bd/thesaurus/dump-thesaurus-fra.sql

 

- pour compléter la BD thésaurus par le thésaurus GEMET :

http://www.mdweb-project.org/16/bd/thesaurus/Insertion-gemet-fra.bat

http://www.mdweb-project.org/16/bd/thesaurus/dump-gemet-fra.sql

 

- pour compléter la BD thésaurus par la toponymie française :

http://www.mdweb-project.org/16/bd/thesaurus/Insertion-toponyme-fra.bat

http://www.mdweb-project.org/16/bd/thesaurus/dump-toponyme-fra.sql

 

Pré-requis à l’exécution des scripts de création des BD

 

Modification du fichier pg_hba.conf 

Afin de simplifier l’installation, notamment la réalisation des scripts d’implantation des bases de données, il est nécessaire, de modifier le fichier d’accès au serveur postgres pg_hba.conf.

Pour cela, Editez le fichier pg_hba.conf à partir du menu Démarrer > Programmes > PostgreSQL > Fichier de configuration > Editez pg_hba.conf.

 

Modifier la ligne :

host    all         all         127.0.0.1/32          md5

en

host    all         all         127.0.0.1/32          trust

 

Recharger la configuration de PostgreSQL à partir du menu Démarrer > Programmes > PostgreSQL > Fichier de configuration > Recharger la configuration

 

 

Mise à jour de la variable system PATH de Windows

Le chemin du répertoire bin et lib de postgreSQL doivent être dans la variable PATH de Windows afin que l’on puisse déclencher les scripts d’installation des bases de données et réaliser des opérations de modification de la structure des bases de données sous MDweb.

Si ce n’est pas le cas, vous devez mettre à jour la variable d’environnement PATH de Windows (Panneau de configuration > Système > Avancé > Variable d’environnement) pour que figure les chemins des exécutables et des librairies PostgreSQL. Normalement ce chemin est [nom volume]:\Program Files\PostgreSQL\8.1\bin et [nom volume]:\Program Files\PostgreSQL\8.1\lib. Rédémarrez votre serveur.

 

Exécution des scripts d’installation des bases de données

 

·         Création de la BD mdweb-demo16-fra :

 

Exécutez le script CreationBD16-fra.bat. Lors de l’exécution de ce script, il vous sera demandé de donner un nom à la base de données MDweb (par défaut, mdweb-demo16-fra).

        

 

·         Création de la BD geo-demo16 :

 

Exécutez le script CreationBD-geo-demo16.bat Lors de l’exécution de ce script, il vous sera demandé de donner :

-  un nom à la base de données géographique (par défaut, geo-demo16)

-  le chemin du fichier lwpostgis.sql nécessaire à la création des fonctions géographiques (par défaut : C:\Program Files\PostgreSQL\8.1\share\contrib\lwpostgis)

-  le chemin du fichier spatial_ref_sys.sql donnant les propriétés des systèmes de projection (par défaut : C:\Program Files\PostgreSQL\8.1\share\contrib\spatial_ref_sys.sql )

 

 

·         Création de la BD thesaurus-fra

 

Exécutez le script CreationBD-thesaurus-fra.bat. Lors de l’exécution de ce script, il vous sera demandé de donner un nom à la base de données MDweb (par défaut, thesaurus-fra).

                   Si vous souhaitez compléter cette base avec le thésaurus GEMET ou le thésaurus comportant la toponymie des communes, départements et régions françaises, exécutez les scripts :

 

                   - Insertion-gemet-fra.bat (thésaurus GEMET)

- Insertion-toponyme-fra.bat (Toponymie française)

 

 en spécifiant comme nom de base de données le même que lors de la création de la base de données contenant le thésaurus

 

Par défaut, MDweb est configuré pour qu’il fonctionne avec les paramètres suivants :

 

·         Adresse web : http://localhost/mdweb-demo16/

·         Chemin des scripts : c:\ms4w\Apache\htdocs\mdweb-demo16

·         Nom du serveur de BD : localhost

·         Nom de l’utilisateur PostgreSQL : postgres

·         Mot de passe de l’utilisateur PostgreSQL : postgres

·         Nom de la base de données MDweb : mdweb-demo16-fra

·         Nom de la base de données géographique : geo-demo16

·         Nom de la base de données thésaurus : thesaurus-fra

 

Remarques :

Par défaut, l’ensemble des bases de données est sur le même serveur. Les trois fichiers de configuration de MDweb permettent ensuite de spécifier des paramètres de connexion pour chaque base de données. Cela donne la possibilité si besoin de répartir les scripts et chaque base de données sur un serveur indépendant.

Par contre, il est indispensable qu’au moment de la création de la base géographique et lors des modifications que vous apporterez pour insérer de nouvelles couches d’informations spécifiques à votre utilisation qu’elle soit sur la même machine que les scripts MDweb.

 

Pour activer MDweb, vous devez copier les fichiers pré-configurés pour Windows comme suit :

 

  • Configuration générale :

 

 config/config.inc.windows.php > config/config.inc.php

 

  • Connexion à la base de données géographique :

 

config/config.inc.carto.windows.php > config/config.inc.carto.php

 

  • Connexion à la base de données thésaurus :

 

config/config.inc.thesaurus.template. php > config/config.inc.thesaurus.php

 

Si vous souhaitez modifier cette configuration, éditez les trois fichiers précédents.

 

Modification de la configuration générale (fichier config/config.inc.php)

 

1. Editez le fichier config\config.inc.php

2. Les valeurs des variables globales de l’application MDweb doivent être modifiées selon la configuration de votre serveur. Le tableau donne le nom et la valeur par défaut des variables du fichier config.inc.php.

 

 

 Nom variable PHP

commentaires

Valeur par défaut

Paramètres de configuration généraux

$type_serveur

Spécifie le système d’exploitation sur lequel est installé MDweb. Deux valeurs possibles ‘unix’ ou ‘windows’

windows

$url_site

Spécifie l’adresse sur laquelle sera accessible MDweb. Ne pas mettre le répertoire MDweb

http://localhost

$alias_appli

permet de spécifier l’alias du répertoire d’installation de MDweb. La valeur par défaut correspond au cas où le répertoire est directement sous la racine du répertoire de publication

/mdweb-demo16/

$chemin_appli

Spécifie le chemin absolu où se situe le répertoire MDweb, sans mentionner le nom du lecteur

/ms4w/Apache/htdocs/mdweb-demo16/

$lecteur