Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
nominatim [Le 06/07/2015, 18:39]
zococo [Installer depuis les sources]
nominatim [Le 25/09/2022, 15:25] (Version actuelle)
Amiralgaby méthode d'installation plus à jour -> redirection vers la documentation officielle
Ligne 1: Ligne 1:
-{{tag>​Trusty SIG OpenStreetMap ​géolocalisation ​BROUILLON}}+{{tag>​Trusty SIG OpenStreetMap BROUILLON}}
  
 ---- ----
Ligne 5: Ligne 5:
 ====== Nominatim ​ ====== ====== Nominatim ​ ======
  
-Nominatim (du Latin, 'par le nom') est un outil permettant de chercher des données géographiques par leur nom et leur adresse et de générer des adresses potentielles à partir de coordonnées géographiques (reverse geocoding). L'​outil peut être utilisé en ligne sur cette page : http://​nominatim.openstreetmap.org. ​+Nominatim (du Latin, 'par le nom') est un outil permettant de chercher des données géographiques par leur nom et leur adresse et de générer des adresses potentielles à partir de coordonnées géographiques (reverse geocoding). L'​outil peut être utilisé en ligne sur cette page : http://​nominatim.openstreetmap.org.
  
 Nominatim est aussi utilisé par l'​outil Search de la page d'​accueil d'​OpenStreetMap et améliore la qualité de la recherche proposée sur les sites MapQuest Open Initiative, PickPoint et OpenCage Geocoder. Nominatim est aussi utilisé par l'​outil Search de la page d'​accueil d'​OpenStreetMap et améliore la qualité de la recherche proposée sur les sites MapQuest Open Initiative, PickPoint et OpenCage Geocoder.
Ligne 14: Ligne 14:
 </​note>​ </​note>​
  
-==== Pourquoi installer Nominatim ​====+<​note>​ 
 +**Pourquoi installer Nominatim ​?**
 Pour un usage occasionnel,​ installer Nominatim sur son ordinateur n'a aucun intérêt. En revanche, pour des usages fréquents et répétés l'​installation de Nominatim permet : Pour un usage occasionnel,​ installer Nominatim sur son ordinateur n'a aucun intérêt. En revanche, pour des usages fréquents et répétés l'​installation de Nominatim permet :
-  * de soulager les serveurs libres et gratuits d'​OpenStreetMap ​+  * de soulager les serveurs libres et gratuits d'​OpenStreetMap
   * de ne pas être dépendant d'​internet   * de ne pas être dépendant d'​internet
   * de disposer de ses propres bases de données   * de disposer de ses propres bases de données
  
-===== Installer Nominatim =====+</​note>​
  
-==== Installer les dépendances ​==== +===== Installation ===== 
-<​code>​ +==== En suivant la documentation officielle ==== 
-sudo apt-get install libgeos-dev libpq-dev libtool automake libproj-dev libboost-dev libboost-system-dev libboost-filesystem-dev libboost-thread-dev gcc proj-bin libgeos-c1 osmosis libgeos++-dev php5 php-pear php5-pgsql php5-json php-db postgresql postgis postgresql-contrib postgresql-9.3-postgis-2.1 postgresql-server-dev-9.3 libprotobuf-c0-dev protobuf-c-compiler +Nominatim peut être installé en suivant [[https://​nominatim.org/​release-docs/​latest/​admin/Installation/​|la documentation officielle]] **(en)**.
-</​code>​ +
-Il faut aussi installer les paquets suivants si vous ne les avez pas déjà installés : +
-<​code>​ +
-sudo apt-get install build-essential libxml2-dev libbz2-dev git cmake pkg-config +
-</​code>​ +
- +
-=== Pour l'​installation depuis les sources git === +
-<​code>​ +
-sudo apt-get install git autoconf-archive +
-</code>+
  
 ==== Installer depuis les sources ==== ==== Installer depuis les sources ====
-Installation ​à partir de la version stable 2.4.0 (à la date du 4 juin 2015).+Voir aussi [[https://​nominatim.org/​release-docs/​latest/​admin/​Installation/|la documentation]] pour avoir les commandes ​à rentrer dans un terminal.
  
-=== Téléchargement du fichier d'​installation compressé ​===+===== Configuration ​===== 
 +==== Personnalisation de Nomitamim ​ ==== 
 +La création d'un fichier <​local.php>​ situé dans le répertoire settings permet de personnaliser Nominatim. Les paramètres possibles peuvent être consultés dans le fichier <​settings/​settings.php>​. 
 +Pour davantage de détail voir **(en)** [[https://​wiki.openstreetmap.org/​wiki/​Nominatim/​Installation|doc]] 
 + 
 +<note tip>** Personnaliser les titres des pages web** 
 + 
 +Si vous souhaitez personnaliser les titres des pages internet telles qu'​elles s'​affichent dans votre navigateur, il suffit de modifier le texte figurant entre les balises <​title>​ et </​title>​ dans les fichiers <​lib/​template/​search-html.php>​ <​lib/​template/​details-html.php>​ et <​lib/​template/​details-error-html.php>​. 
 + 
 +ex :
 <​code>​ <​code>​
-wget http://​www.nominatim.org/​release/​Nominatim-2.4.0.tar.bz2+<​title>​Perso - OpenStreetMap Nominatim ​Recherche<​/title>
 </​code>​ </​code>​
-=== Décompactage du fichier d'​installation ===+au lieu de :
 <​code>​ <​code>​
-tar xvf Nominatim-2.4.0.tar.bz2+<​title>​OpenStreetMap ​Nominatim: Search</​title>​
 </​code>​ </​code>​
-=== Compilation === 
-Se rendre dans le répertoire Nominatim créé après la décompression (appelé Nominatim dans l'​exemple ci-dessous) 
-<​code>​ 
-cd Nominatim 
-./configure 
-make 
-sudo checkinstall 
-</​code>​ 
- 
-<note tip> 
-Les alertes à propos de l'​absence des librairies lua peuvent être ignorées, Nominatim n'​utilise pas l'​extension lua de osm2PGSql. ​ 
 </​note>​ </​note>​
  
-=== Personnalisation de Nomitamim (voir site internet) === +==== Téléchargement de données optionnelles ​====
-La création d'un fichier <​local.php>​ situé dans le répertoire settings permet de personnaliser Nominatim. Les paramètres possibles peuvent être consultés dans le fichier <​settings/​settings.php>​. +
- +
-=== Téléchargement de données optionnelles ===+
  
-== Pondérations Wikipedia (Wikipedia rankings) ==+=== Pondérations Wikipedia (Wikipedia rankings) ​===
 Le fonctionnement de Nominatim peut être amélioré par le recours aux pondérations Wikipédia qui permettent de mesure l'​importance des données osm. Nominatim peut fonctionner sans ces données mais la qualité du résultat s'en trouve dégradée. Le fonctionnement de Nominatim peut être amélioré par le recours aux pondérations Wikipédia qui permettent de mesure l'​importance des données osm. Nominatim peut fonctionner sans ces données mais la qualité du résultat s'en trouve dégradée.
  
Ligne 75: Ligne 61:
 La taille cumulée de ces deux fichiers atteint 1,5 GO et ajoute 30 GO à la taille finale de Nominatim sur le disque. La durée d'​installation de Nominatim s'en trouve accrue d'une heure environ. La taille cumulée de ces deux fichiers atteint 1,5 GO et ajoute 30 GO à la taille finale de Nominatim sur le disque. La durée d'​installation de Nominatim s'en trouve accrue d'une heure environ.
  
-== Codes postaux britanniques ==+=== Codes postaux britanniques ​===
 Le cas échéant, utile pour les recherches concernant le territoire britannique. Le cas échéant, utile pour les recherches concernant le territoire britannique.
 <​code>​ <​code>​
Ligne 81: Ligne 67:
 </​code>​ </​code>​
  
-=== Création des comptes postgres === +=== Installation des données Tiger housenumber pour les États-Unis d'​Amérique === 
-== Compte de l'​importateur ==+ 
 +Aux États-Unis d'​Amérique,​ l'​instance Nominatim d'OSM utilise la base de données d'​adresses TIGER pour compléter les données sur les numéros de rues qui restent encore incomplètes dans OpenStreetMap. L'​ajout des données TIGER est possible après avoir installé la librairie GDAL pour Python. 
 +**Installation de la librairie GDAL pour Python** 
 +<​code>​ 
 +sudo apt-get install python-gdal 
 +</​code>​ 
 +**Téléchargement des données TIGER 2014** 
 + 
 +Les fichiers à télécharger sont les fichiers EDGES (3 234 fichiers compressés,​ 11GO au total) 
 +<​code>​ 
 + wget -r ftp://​ftp2.census.gov/​geo/​tiger/​TIGER2014/​EDGES/​ 
 +</​code>​  
 +**Conversion des données en requêtes SQL (sauvegardées dans data/​tiger2011) :** 
 +<​code>​ 
 +./​utils/​imports.php --parse-tiger-2011 <​répetoire des fichiers tiger edge> 
 +</​code>​ 
 +<note attention>​ 
 +Si vous utilisez la dernière version de développement,​ utiliser --parse-tiger. 
 +</​note>​ 
 +**Importation des données dans la base de données Nominatim de votre station de travail** 
 +<​code>​ 
 + ​./​utils/​setup.php --import-tiger-data 
 +</​code>​ 
 +<note attention>​ 
 +L'​importation peut prendre beaucoup de temps, notamment si vous importez l'​ensemble des données du pays. Une semaine entière sur un petit Asus 1015E doté d'un processeur Intel® Celeron® Dual-Core 847 à 1,1GHz et d'un disque ATA Seagate de 320 GO à 5400 tours. 
 +</​note>​ 
 + 
 +==== Création des comptes postgres ​==== 
 +=== Compte de l'​importateur ​===
 <​code>​ <​code>​
 sudo -u postgres createuser -s <votre nom d'​utilisateur>​ sudo -u postgres createuser -s <votre nom d'​utilisateur>​
Ligne 90: Ligne 104:
 </​note>​ </​note>​
  
-== Compte de l'​utilisateur ==+=== Compte de l'​utilisateur ​===
 Le nom d'​utilisateur correspond au nom du compte qui doit être utilisé pour finaliser l'​installation. Vous devez vous assurer (paramétrage généralement par défaut dans la plupart des distributions) que cet utilisateur peut se connecter à la base de donnée sans mot de passe. Le nom d'​utilisateur correspond au nom du compte qui doit être utilisé pour finaliser l'​installation. Vous devez vous assurer (paramétrage généralement par défaut dans la plupart des distributions) que cet utilisateur peut se connecter à la base de donnée sans mot de passe.
  
Ligne 100: Ligne 114:
  
 <note warning> <note warning>
-En aucun cas l'​importation ne doit être réalisée sous le compte root ou www-data+En aucun cas l'​importation ne doit être réalisée sous le compte root ouwww-data
 </​note>​ </​note>​
-== Paramètres PostgreSQL ==+=== Paramètres PostgreSQL ​===
 Par défaut la base de données PostgreSQL s'​installe dans le répertoire racine, au risque de ne plus laisser de place au système. Par défaut la base de données PostgreSQL s'​installe dans le répertoire racine, au risque de ne plus laisser de place au système.
 Le répertoire de la base de donnée est le suivant sur mon Ubuntu 14.04 : </​var/​lib/​postgresql/​9.3/​main>​ [9.3 pour la version actuelle]. Le répertoire de la base de donnée est le suivant sur mon Ubuntu 14.04 : </​var/​lib/​postgresql/​9.3/​main>​ [9.3 pour la version actuelle].
Ligne 114: Ligne 128:
 sudo pg_ctlcluster 9.3 main start sudo pg_ctlcluster 9.3 main start
 </​code>​ </​code>​
-ou bien+oubien
 <​code>​ <​code>​
 sudo service postgres 9.3 main start sudo service postgres 9.3 main start
Ligne 128: Ligne 142:
 chmod +x ~/​src/​Nominatim/​module chmod +x ~/​src/​Nominatim/​module
 </​code>​ </​code>​
 +
 +<note warning>​La gestion des droits est essentielle au bon fonctionnement de Nominatim. Des droits insuffisants conduiront à l'​échec de la procédure de téléchargement des données.</​note>​
  
 === Importation et indexation des données OSM === === Importation et indexation des données OSM ===
  
-L'​importation préalable du fichier mondial ("​Planet file"​) ​ou d'une extraction (par exemple du site Geofabrik) est nécessaire. Utiliser le format PBF.+L'​importation préalable du fichier mondial ("​Planet file"​) ​oud'une extraction (par exemple du site Geofabrik) est nécessaire. Utiliser le format PBF.
  
-<​note ​warning>+<​note ​tip>
 La durée de téléchargement peut être longue, ouvrir une instance de terminal peut vous permettre de faire autre chose pendant ce temps. La durée de téléchargement peut être longue, ouvrir une instance de terminal peut vous permettre de faire autre chose pendant ce temps.
 </​note>​ </​note>​
Ligne 148: Ligne 164:
  
 Il se peut que vous rencontriez des problèmes liés au paramétrage de postgresql lors de l'​importation des données, fichiers manquants, opérations impossibles,​ etc. Il se peut que vous rencontriez des problèmes liés au paramétrage de postgresql lors de l'​importation des données, fichiers manquants, opérations impossibles,​ etc.
-La procédure ci-dessous a permis de solutionner le problème pour une installation particulière. À tenter sans garantie et en réfléchissant un peu. +La procédure ci-dessous a permis de solutionner le problème pour une installation particulière. À tenter sans garantie et en réfléchissant un peu.
 NB : postgresql exige que la version soit précisée, dans l'​exemple ci-dessous c'est la 9.3. À adapter selon votre configuration. NB : postgresql exige que la version soit précisée, dans l'​exemple ci-dessous c'est la 9.3. À adapter selon votre configuration.
   * Arrêt postgresql   * Arrêt postgresql
Ligne 168: Ligne 184:
 /​var/​lib/​postgresql /​var/​lib/​postgresql
 /​etc/​postgresql /​etc/​postgresql
-/​var/​log/​postgresql ​+/​var/​log/​postgresql
 /​usr/​share/​postgresql /​usr/​share/​postgresql
 et votre répertoire de données et votre répertoire de données
 <​code>​ <​code>​
-sudo rm -R /​var/​lib/​postgresql /​etc/​postgresql/​ /​var/​log/​postgresql /​usr/​share/​postgresql+sudo rm -R /​var/​lib/​postgresql /​etc/​postgresql/​ /​var/​log/​postgresql/​usr/​share/​postgresql
 sudo rm -R <votre répertoire>​ sudo rm -R <votre répertoire>​
 </​code>​ </​code>​
Ligne 203: Ligne 219:
 <​code>​ <​code>​
 cd <votre répertoire d'​installation>​ cd <votre répertoire d'​installation>​
 +</​code>​
   * Traitement données   * Traitement données
 <​code>​ <​code>​
Ligne 223: Ligne 240:
  
 == Ajout des codes et des noms de pays à l'​index de recherche == == Ajout des codes et des noms de pays à l'​index de recherche ==
-Saisissez ​les instructions suivantes dans le terminal :+Saisir ​les instructions suivantes dans le terminal :
 <​code>​ <​code>​
 ./​utils/​specialphrases.php --countries > data/​specialphrases_countries.sql ./​utils/​specialphrases.php --countries > data/​specialphrases_countries.sql
Ligne 236: Ligne 253:
 </​code>​ </​code>​
 Ces opération doivent être répétées de temps en temps pour prendre en compte les mises à jours et compléments du wiki. Il est notamment nécessaire d'​effectuer la mise à jour après chaque mise à jour de Nomnatim. Ces opération doivent être répétées de temps en temps pour prendre en compte les mises à jours et compléments du wiki. Il est notamment nécessaire d'​effectuer la mise à jour après chaque mise à jour de Nomnatim.
-== langues ​==+== Langues ​==
 Si vous n'avez pas besoin des phrases pour toutes les langues, éditez utils/​specialphrases.php et supprimez en début de fichier les langues non utilisées. Si vous n'avez pas besoin des phrases pour toutes les langues, éditez utils/​specialphrases.php et supprimez en début de fichier les langues non utilisées.
  
Ligne 244: Ligne 261:
  
 == Création du répertoire == == Création du répertoire ==
-Créez ​le répertoire du site et assurez vous que les droits en écriture sont ouverts pour l’utilisateur d'​installation et en lecture par Apache.+Créer ​le répertoire du site et assurez vous que les droits en écriture sont ouverts pour l’utilisateur d'​installation et en lecture par Apache.
 <​code>​ <​code>​
 sudo mkdir -m 755 <​répertoire racine apache>/​nominatim sudo mkdir -m 755 <​répertoire racine apache>/​nominatim
Ligne 252: Ligne 269:
 Le répertoire racine par défaut d'​apache est /​var/​www/​html depuis Ubuntu 14.04, auparavant il s'​agissait de /var/www Le répertoire racine par défaut d'​apache est /​var/​www/​html depuis Ubuntu 14.04, auparavant il s'​agissait de /var/www
 </​note>​ </​note>​
- +<note warning>Veiller particulièrement à ce que l'​utilisateur www-data possède les droits suffisants pour accéder au répertoire nominatim, sinon le serveur ne fonctionnera pas.</note
-== liens symboliques == +== Paramètres ​de CONST_Website_BaseURL ==
-Rendez disposnible le répertoire du site web avec les liens symboliques nécessaires : +
-<code> +
- ​./​utils/​setup.php ​--create-website <répertoire ​racine apache>/nominatim +
-</code> +
- +
-== paramètres ​de CONST_Website_BaseURL ==+
 Vérifier que settings/​local.php est configuré avec les valeurs correctes pour CONST_Website_BaseURL : il faut créer un fichier local.php dans le répertoire Nominatim-2.4.0/​settings contenant les valeurs suivantes : Vérifier que settings/​local.php est configuré avec les valeurs correctes pour CONST_Website_BaseURL : il faut créer un fichier local.php dans le répertoire Nominatim-2.4.0/​settings contenant les valeurs suivantes :
 <​code>​ <​code>​
-@define('​CONST_Website_BaseURL',​ '<​répertoire racine ​apache>/​nominatim'​);​+@define('​CONST_Website_BaseURL',​ '<​répertoire racine ​serveur pour le navigateur>/​nominatim'​);​
 </​code>​ </​code>​
 par exemple : par exemple :
Ligne 279: Ligne 290:
 Ce n'est pas orthodoxe mais ça peut fonctionner en cas de problème d'​arborescence. Ce n'est pas orthodoxe mais ça peut fonctionner en cas de problème d'​arborescence.
 </​note>​ </​note>​
 +== Liens symboliques ==
 +Rendre disponible le répertoire du site web avec les liens symboliques nécessaires :
 +<​code>​
 + ​./​utils/​setup.php --create-website <​répertoire racine apache>/​nominatim
 +</​code>​
 +
 == Configuration pour utilisation avec Apache == == Configuration pour utilisation avec Apache ==
 Vérifier que le fichier de configuration Apache contient les valeurs suivantes pour les répertoires : Vérifier que le fichier de configuration Apache contient les valeurs suivantes pour les répertoires :
 <​code>​ <​code>​
- <​Directory "/​var/​www/​nominatim/">​+ <​Directory "/​var/​www/html/​nominatim/">​
     Options FollowSymLinks MultiViews     Options FollowSymLinks MultiViews
     AddType text/​html ​  ​.php ​         AddType text/​html ​  ​.php ​    
  </​Directory>​  </​Directory>​
 </​code>​ </​code>​
-En d'​autres termes il faut insérer ces lignes dans le fichier de configuration /​etc/​apache2/​apache2.conf (adapter le nom du répertoire).+En d'​autres termes il faut insérer ces lignes dans le fichier de configuration ​</​etc/​apache2/​apache2.conf(adapter le nom du répertoire).
  
-</​var/​www/​nominatim/> doit être remplacé par le nom du répertoire défini lors de la mise en place du site web Nominatim (voir ci-dessus).+</​var/​www/​html/nominatim> doit être remplacé par le nom du répertoire défini lors de la mise en place du site web Nominatim (voir ci-dessus).
  
 Relancer Apache après modification de la configuration (sudo service apache2 start | restart) Relancer Apache après modification de la configuration (sudo service apache2 start | restart)
  
 Vous pouvez désormais utiliser Nominatim Vous pouvez désormais utiliser Nominatim
- Saisir localhost/​nominatim dans votre navigateur internet + Saisir ​http://localhost/​nominatim/​search.php ​dans votre navigateur internet 
- saisir une adresse...+ saisir une adresse...ml/
  
 == Configuration pour utilisation avec Nginx == == Configuration pour utilisation avec Nginx ==
  
-Pas testé. Voir doc+Pas testé. Voir  ​**(en)** [[https://​wiki.openstreetmap.org/​wiki/​Nominatim/​Installation|doc]]
  
-==== Mise à jours base de données Nominatim avec Osmosis ====+===== Utilisation de Nominatim ===== 
 + 
 +La recherche dans Nominatim fonctionne à partir d'​objets nommés ounumérotés à partir des données Openstreetmap (OSM) ainsi que d'une liste d'​objets "non nommés"​ comme des commerces, des hôtels, des bâtiments publics, etc. 
 + 
 +Le serveur Nominatim peut fonctionner de manière interactive dans le navigateur : saisir l'​adresse localhost/​nominatim/​search.php affiche une carte du monde avec une zone à l'​intérieur de laquelle il suffit de saisir une adresse physique pour la géocoder. 
 + 
 +Toutefois Nominatim peut faire nettement plus, c'est ce que nous allons voir ci-dessous. 
 +==== Géocodage ==== 
 +Le géocodage est l'​action consistant à transformer une adresse en coordonnées géographiques. 
 + 
 +=== Format des requêtes === 
 +Il est conseillé de saisir les requêtes de gauche à droite, en commençant par le plus précis (1, quai de la fraternité,​ Marseille) puis, en cas de difficulté,​ de réssayer en ordre inverse, de droite à gauche. 
 + 
 +== Format de base == 
 + 
 +Les requêtes sont passées dans le navigateur sous la forme suivante : 
 +<​code>​ 
 +"​http://​nominatim.openstreetmap.org/​search?<​paramètres>"​ 
 +</​code>​ 
 +ou 
 +<​code>​ 
 + "​http://​nominatim.openstreetmap.org/​search/<​requête>?<​paramètres>"​ 
 +</​code>​ 
 +===Adresses=== 
 +Rue de la République,​ Marseille 
 +et 
 +Marseille, Rue de la République 
 +sont deux formats valides 
 +==Numéros== 
 +La saisie des numéros améliore la précision de la recherche. Dans ce cas le format de gauche à droite est nécessaire : 
 +51, rue de la République,​ Marseille 
 +==Virgule== 
 +La présence de virgules entre les termes de la recherche n'est pas obligatoire mais améliore l’efficacité de la requête. 
 + 
 +===Mots clés spécifiques=== 
 +L'​usage des mots clés spécifiques est possible si les "​phrases spéciales"​ (special phrases) ont été ajoutées à la base de donnée. 
 + 
 +== Paramètres == 
 +** format=[html|xml|json|jsonv2] ** 
 + 
 +Format de la sortie 
 + 
 +  * html 
 +Format html 
 +  * xml 
 +Format XML (format structuré) 
 +  * json 
 +Format json 
 +  * jsonv2 
 +Format jsonv2 
 + 
 +**json_callback=<​chaîne>​** 
 + 
 +Empaquette le résultat de la requête dans un appel de fonction json, c'est à dire une chaîne commençant par "​json>"​ 
 + 
 +**accept-language=<​langue du navigateur au format chaîne de caractère>​** 
 + 
 +Force la langue de résultat indépendamment des valeur figurant dans l'​en-tête (header) http. Accepte toutes les langues au format rfc2616 oudes codes de langue séparés par des virgules. 
 + 
 +===Écriture de la requête=== 
 +q=<​requête>​ 
 +<​requête>​ est la chaîne de caractères recherchée. Les valeurs suivantes sont possibles : 
 + 
 +  *  street=<​numéro>​ <nom de rue> 
 +  *  city=<​ville>​ 
 +  *  county=<​comté>​ 
 +  *  state=<​état>​ 
 +  *  country=<​pays>​ 
 +  *  postalcode=<​ code postal>​ 
 + 
 +===Requêtes structurées (experimental)=== 
 +Les requêtes structurées sont plus rapides et nécessites moins de ressources serveur. 
 +NE PAS COMBINER AVEC LES PARAMETRES q=<​query>​ PARAMETRES 
 + 
 +==countrycodes=<​ code pays>​[,<​ code pays>​][,<​ code pays>​]...== 
 +Restreint la recherche à un pays (ouune liste de pays). Code au format ISO 3166-1alpha2 (fr pour France) 
 + 
 +==viewbox=<​gauche>,<​haut>,<​droite>,<​bas> ​ ouviewboxlbrt=<​gauche>,<​bas>,<​droite>,<​haut>​== 
 +zone préferentielle de recherche des résultats 
 + 
 +==bounded=[0|1]== 
 +Restreint la recherche aux seuls objets contenus dans la zone de recherche. 
 +Cette restriction permet la recherche par aménité. Ainsi [pub] échouera alors que [pub] avec bounded=1 affichera une liste d'​objets correspondant à l'item à l'​intérieur de la zone de recherche.* 
 + 
 +==polygon=[0|1]== 
 +Obsolète 
 + 
 +==addressdetails=[0|1]== 
 +Séparation de l'​adresse en différents éléments 
 + 
 +==email=<​addresse électronique de contact>​== 
 +Peu utile pour un serveur autohébergé. Concerne les usages en ligne en masse 
 + 
 +==exclude_place_ids=<​identifiant de lieu,​[identifiant de lieu],​[identifiant de lieu]>​== 
 +Permet d'​exclure de la liste des résultats certains objets à partir de leur identifiant OSM. Cette fonctionnalité est utile lorsqu'​une première recherche n'a produt qu'un nombre lmité de résultats. Exclure ces objets permet d'​obtenir davantage de réponses. 
 + 
 +==limit=<​entier>​== 
 +Limite le nombre des résultats au nombre précisé 
 + 
 +==dedupe=[0|1]== 
 +Non documenté 
 + 
 +== debug=[0|1]== 
 +Non documenté 
 + 
 +==polygon_geojson=1== 
 +Affiche la géométrie des résultats au format geojson. 
 + 
 +==polygon_kml=1== 
 +Affiche la géométrie des résultats au format kml. 
 + 
 +==polygon_svg=1== 
 +Affiche la géométrie des résultats au format svg. 
 + 
 +==polygon_text=1== 
 +Affiche la géométrie des résultats au format WKT. 
 + 
 +=== Exemples === 
 +Pour faciliter le travail des utilisateurs,​ les liens sont donnés d'​abord sur le serveur internet Nominatim d'​Openstreetmap puis sur localhost pour les ubuntunautes qui ont poursuivi le travail d'​installation du serveur à son terme. 
 + 
 +== 32 quai du port à Marseille == 
 + 
 +[[http://​nominatim.openstreetmap.org/​search.php?​q=32%2C+quai+du+port+Marseille&​viewbox=5.37%2C43.3%2C5.38%2C43.29]] 
 + 
 +[[http://​localhost/​nominatim/​search.php?​q=32%2C+quai+du+port+Marseille&​viewbox=5.37%2C43.3%2C5.38%2C43.29]] 
 + 
 +{{ :​nominatim_32_q_du_port_marseille.png?​600 |}} 
 + 
 +==12 Cours Mirabeau à Aix-en-Provence== 
 + 
 +[[http://​nominatim.openstreetmap.org/​search.php?​q=12+cours+Mirabeau%2C+Aix+en+Provence&​viewbox=5.43%2C43.54%2C5.47%2C43.52]] 
 + 
 +[[http://​localhost/​nominatim/​search.php?​q=12+cours+Mirabeau%2C+Aix+en+Provence&​viewbox=5.43%2C43.54%2C5.47%2C43.52]] 
 + 
 +{{ :​12_cours_mirabeau_aix.png?​600 |}} 
 + 
 +== Détails : 20, La Canebière à Marseille == 
 +À noter : les place_id sont différents ! 
 + 
 +[[http://​nominatim.openstreetmap.org/​details.php?​place_id=20684057]] 
 + 
 +[[http://​localhost/​nominatim/​details.php?​place_id=147400]] 
 + 
 +{{ :​detail_20_la_canebiere.png ?600 |}} 
 + 
 +[[https://​nominatim.openstreetmap.org/​search.php?​q=20+la+Canebi%C3%A8re+Marseille&​format=json]] 
 + 
 +[[http://​localhost/​nominatim/​search.php?​q=20+la+Canebi%C3%A8re+Marseille&​format=json]] 
 + 
 +{{ ::​capture_du_2015-07-08_20_30_03.png?​600 |}} 
 + 
 +Et une petite dernière pour la route : 
 + 
 +[[https://​nominatim.openstreetmap.org/​search.php?​q=20+la+Canebi%C3%A8re+Marseille&​format=xml]] 
 + 
 +[[http://​localhost/​nominatim/​search.php?​q=20+la+Canebi%C3%A8re+Marseille&​format=xml]] 
 + 
 +{{ ::​capture_du_2015-07-08_20_29_26.png?​600 |}} 
 +====Géocodage inversé==== 
 + 
 +Le géocodage inversé est l'​action qui consiste à déduire une adresse à partir d'une position en latitude et longitude. Le paramètre optopnnel de zoom précise le niveau de détail requis. 
 + 
 +=== format=[xml|json] === 
 +Format de la sortie 
 + 
 +==xml== 
 +Format XML (format structuré) 
 +==json== 
 +Format json 
 + 
 +===json_callback=<​chaîne>​=== 
 +Empaquette le résultat de la requête dans un appel de fonction json, c'est à dire une chaîne commençant par "​json>"​ 
 + 
 +===accept-language=<​langue du navigateur au format chaîne de caractère>​=== 
 +Force la langue de résultat indépendamment des valeur figurant dans l'​en-tête (header) http. Accepte toutes les langues au format rfc2616 oudes codes de langue séparés par des virgules. 
 + 
 + ​===osm_type=[N|W|R] osm_id=<​valeur>​=== 
 +objet OSM (noeud/​route/​relation) à géocoder. Lorsque cela est possible, l'​usage des identifiants d'​objets OSM est préférable. 
 + 
 +=== lat=<​valeur> ​ lon=<​valeur>​=== 
 +Coordonnées du point à géocoder. 
 + 
 +=== zoom=[0-18]=== 
 +Niveau de zoom, 1 correspond à un pays, 18 à un immeuble. 
 + 
 +=== addressdetails=[0|1]=== 
 +Séparation de l'​adresse en différents éléments 
 + 
 +===email=<​adresse électronique de contact>​=== 
 +Peu utile pour un serveur auto hébergé. Concerne les usages en ligne en masse. 
 + 
 +===Hierarchie=== 
 +  * Niveau administratif ​ entité XML 
 +  * 2 <​pays>​ 
 +  * 4 <​état>​ (en France, région ?) 
 +  * 5 <​district d'​état>​ (en France, département ?) 
 +  * 6  
 +  * 7 <​comté>​ (en France, canton ?) 
 +  * 8 <​commune>​ 
 +  * 9 <​arrondissement>​ 
 +  * 10 <​quartier>​ 
 + 
 +=== Exemples === 
 + 
 +== Latitude Nord 43,29537 Longitude Est 5,37444== 
 +[[http://​localhost/​nominatim/​reverse?​format=xml&​lat=43.29537&​lon=5.37444&​zoom=18&​addressdetails=1]] 
 + 
 +[[http://​localhost/​nominatim/​reverse?​format=xml&​lat=43.29537&​lon=5.37444&​zoom=18&​addressdetails=1]] 
 + 
 +Surprise ! C'est : 1, La Canebière, Marseille 1er Arrondissement,​ Marseille, Bouches-du-Rhône,​ Provence-Alpes-Côte d'​Azur,​ 13001, France 
 + 
 +==  Latitude Nord 44,90008 Longitude Est  6,4461== 
 + 
 +[[https://​nominatim.openstreetmap.org/​reverse?​format=xml&​lat=44.88989&​lon=6.63344&​zoom=18&​addressdetails=1]] 
 + 
 +[[http://​localhost/​nominatim/​reverse?​format=xml&​lat=44.88989&​lon=6.63344&​zoom=18&​addressdetails=1]] 
 + 
 +Et la capture d'​écran : 
 + 
 +{{ ::​capture_du_2015-07-08_20_53_01.png?​600 |}} 
 + 
 +Gare SNCF de Briançon. 
 + 
 +====Consultation d'​adresses==== 
 +Affiche les adresses d'un ouplusiseurs objets OSM : noeuds, routes, relations. 
 + 
 +=== Format === 
 +<​code>​ http://​nominatim.openstreetmap.org/​lookup?<​query>​ 
 +</​code>​ 
 +=== Paramètres === 
 +== format=[xml|json] == 
 +Format de la sortie 
 + 
 +**xml** 
 +Format XML (format structuré) 
 +**json** 
 +Format json 
 + 
 +==json_callback=<​chaîne>​== 
 +Empaquette le résultat de la requête dans un appel de fonction json, c'est à dire une chaîne commençant par "​json>"​ 
 + 
 +==accept-language=<​langue du navigateur au format chaîne de carctères>​== 
 +Force la langue de résultat indépendamment des valeur figurant dans l'​en-tête (header) http. Accepte toutes les langues au format rfc2616 oudes codes de langue séparés par des virgules. 
 + 
 +==osm_ids=[N|W|R]<​valeur>,​…,​[N|W|R]<​valeur>​== 
 +liste de 1 à 50 objets dont l'​adresse doit être retournée. 
 + 
 +==addressdetails=[0|1]== 
 +Séparation de l'​adresse en différents éléments 
 + 
 +==email=<​addresse électronique de contact>​== 
 +Peu utile pour un serveur autohébergé. Concerne les usages en ligne en masse. 
 + 
 +=== Exemples === 
 +[[https://​nominatim.openstreetmap.org/​lookup?​osm_ids=R76091,​W186948207,​N2113091575]] 
 + 
 +===== Mise à jours base de données Nominatim avec Osmosis ​=====
  
 Plusieurs méthodes existent, la documentation OpenStreetMap conseille Osmosis et renvoie à la lecture de <​./​utils/​update.php --help> pour obtenir la liste des autres méthodes. Plusieurs méthodes existent, la documentation OpenStreetMap conseille Osmosis et renvoie à la lecture de <​./​utils/​update.php --help> pour obtenir la liste des autres méthodes.
  
-=== Installation de la nouvelle version d'​Osmosis ===+==== Installation de la nouvelle version d'​Osmosis ​====
  
-== Téléchargement du binaire ==+=== Téléchargement du binaire ​===
 La version d'​Osmosis disponible dans les paquets de la plupart des distributions est trop ancienne pour repérer correctement les différences pour la mise à jour. Il est donc conseillé de télécharger le binaire de la dernière version stable sur le site [[https://​wiki.openstreetmap.org/​wiki/​FR:​Osmosis|Osmosis]] puis de le décompresser. Copier alors le binaire dans </​usr/​local/​bin>​ : La version d'​Osmosis disponible dans les paquets de la plupart des distributions est trop ancienne pour repérer correctement les différences pour la mise à jour. Il est donc conseillé de télécharger le binaire de la dernière version stable sur le site [[https://​wiki.openstreetmap.org/​wiki/​FR:​Osmosis|Osmosis]] puis de le décompresser. Copier alors le binaire dans </​usr/​local/​bin>​ :
 <​code>​ <​code>​
-mv osmosis /​usr/​local/​bin/​osmosis+wget http://​bretth.dev.openstreetmap.org/​osmosis-build/​osmosis-latest.zip 
 +unzip osmosis-latest.zip bin/​osmosis 
 +mv bin/osmosis /​usr/​local/​bin/​osmosis 
 +rmdir bin 
 +rm osmosis-latest.zip
 </​code>​ </​code>​
  
-== Définir ​la version à utiliser ==+=== Définition de la version à utiliser ​===
 Indiquer alors à Nominatim d'​utiliser cette version d'​Osmosis en ajoutant cette cible au fichier settings/​local.php:​ Indiquer alors à Nominatim d'​utiliser cette version d'​Osmosis en ajoutant cette cible au fichier settings/​local.php:​
 <​code>​ <​code>​
Ligne 319: Ligne 596:
 </​code>​ </​code>​
  
-== Configuration des mises à jour ==+==== Configuration des mises à jour ====
  
-Par défaut, Nominatim est configuré pour réaliser des mises à jour des différences globales à la minute (?? global minutely diffs - mon anglais technique est insuffisant pour ue traduction optimale). ​+Par défaut, Nominatim est configuré pour réaliser des mises à jour des différences globales à la minute (?? global minutely diffs - mon anglais technique est insuffisant pour une traduction optimale).
  
-**Modification des sources de mise à jour**+===Modification des sources de mise à jour===
  
 Pour modifier les sources de mise à jour, le paramétrage est à faire dans le fichier <​settings/​local.php>​. Par exemple, pour utiliser les mises à jours quotidiennes en Irlande à partir de Geofabrik, ajouter les lignes suivantes à <​settings/​local.php>​ : Pour modifier les sources de mise à jour, le paramétrage est à faire dans le fichier <​settings/​local.php>​. Par exemple, pour utiliser les mises à jours quotidiennes en Irlande à partir de Geofabrik, ajouter les lignes suivantes à <​settings/​local.php>​ :
Ligne 333: Ligne 610:
 </​code>​ </​code>​
  
-**Remplacement du paramétrage antérieur**+Et pour la France : 
 +<​code>​ 
 +@define('​CONST_Replication_Url',​ '​http://​download.geofabrik.de/​europe/​france-updates'​);​ 
 +</​code>​ 
 +===Remplacement du paramétrage antérieur===
  
-Il est nécessaire de préalablement effacer le fichier <​configuration.txt>​ puis d'​executer ​la commande setup.php :+Il est nécessaire de préalablement effacer le fichier <​configuration.txt>​ puis d’exécuter ​la commande setup.php :
 <​code>​ <​code>​
 rm configuration.txt rm configuration.txt
Ligne 341: Ligne 622:
 </​code>​ </​code>​
  
-== Activation des mises à jour hiérarchiques ==+=== Activation des mises à jour hiérarchiques ​===
  
 Lorsqu'​un lieu est modifié dans la base de données, l'​ensemble des lieux qui contiennent cet endroit doit être également mis à jour. Ces mises à jour hiérarchiques sont désactivées pas défaut car elles ralentissent l'​importation initiale. Il convient d'​activer ces mises à jour avec la commande suivante : Lorsqu'​un lieu est modifié dans la base de données, l'​ensemble des lieux qui contiennent cet endroit doit être également mis à jour. Ces mises à jour hiérarchiques sont désactivées pas défaut car elles ralentissent l'​importation initiale. Il convient d'​activer ces mises à jour avec la commande suivante :
Ligne 348: Ligne 629:
 </​code>​ </​code>​
  
-== Mise à jour de Nominatim ==+==== Mise à jour de Nominatim ​====
 La commande ci-dessous permet de maintenir à jour en permanence la base de donnée : La commande ci-dessous permet de maintenir à jour en permanence la base de donnée :
 <​code>​ <​code>​
Ligne 400: Ligne 681:
 </​code>​ </​code>​
  
-== Installation des données Tiger housenumber pour les États-Unis d'​Amérique == +===== En cas de problème ​=====
- +
-Aux États-Unis d'​Amérique,​ l'​instance Nominatim d'OSM utilise la base de données d'​adresses TIGER pour compléter les données sur les numéros de rues qui restent encore incomplètes dans OpenStreetMap. L'​ajout des données TIGER est possible après avoir installé la librairie GDAL pour Python. +
-**Installation de la librairie GDAL pour Python** +
-<​code>​ +
-sudo apt-get install python-gdal +
-</​code>​ +
-**Téléchargement des données TIGER 2014** +
- +
-Les fichiers à télécharger sont les fichiers EDGES (3 234 fichiers compressés,​ 11GO au total) +
-<​code>​ +
- wget -r ftp://​ftp2.census.gov/​geo/​tiger/​TIGER2014/​EDGES/​ +
-</​code>​  +
-**Conversion des données en requêtes SQL (sauvegardées dans data/​tiger2011) :**  +
-<​code>​ +
-./​utils/​imports.php --parse-tiger-2011 <​répetoire des fichiers tiger edge> +
-</​code>​ +
-<note attention>​ +
-Si vous utilisez la dernière version de développement,​ utiliser --parse-tiger. +
-</​note>​ +
-**Importation des données dans la base de données Nominatim de votre station de travail** +
-<​code>​ +
- ​./​utils/​setup.php --import-tiger-data +
-</​code>​ +
-<note attention>​ +
-L'​importation peut prendre beaucoup de temps, notamment si vous importez l'​ensemble des données du pays. +
-</​code>​ +
-=== En cas de problème ===+
 Se rendre sur [[https://​wiki.openstreetmap.org/​wiki/​Nominatim/​Installation/​Troubleshooting]] Se rendre sur [[https://​wiki.openstreetmap.org/​wiki/​Nominatim/​Installation/​Troubleshooting]]
  
 ===== Voir aussi ===== ===== Voir aussi =====
-  + 
-  * **(en)** [[https://​wiki.openstreetmap.org/​wiki/​Nominatim/​Installation|Installation Nominatim]] ​par OpenStreetMap+  * **(en)** [[https://​wiki.openstreetmap.org/​wiki/​Nominatim?​setlang=fr|Présentation]] sur OpenStreetMap 
 +  * **(en)** [[https://​nominatim.org/​release-docs/​latest/​admin/​Installation/|Installation Nominatim]] ​sur OpenStreetMap 
 +  * [[osrm|OSRM]]
 ---- ----
 //​Contributeurs principaux : [[zococo|Zococo]].//​ //​Contributeurs principaux : [[zococo|Zococo]].//​
    
 //Basé sur [[https://​wiki.openstreetmap.org/​wiki/​Nominatim/​Installation|Installation Nominatim]] par OpenStreetMap.//​ //Basé sur [[https://​wiki.openstreetmap.org/​wiki/​Nominatim/​Installation|Installation Nominatim]] par OpenStreetMap.//​
  • nominatim.1436200746.txt.gz
  • Dernière modification: Le 06/07/2015, 18:39
  • par zococo