zoukankan      html  css  js  c++  java
  • Ubuntu 14.04安装地里编码软件Nominatim过程

    .必须软件:

    Ubuntu系统编译执行Nominatim软件系统必须安装的软件有:

    1.GCC 编译器

    2.postgresql 数据库

    3.proj4

    4.geos

    5.postgis

    6.PHP

    7.PHP-pgsql

    8.PEAR::DB

    9.protobuf

    10.wget

    11.osmis

    .安装必须的软件包

    Apt-get install build-essential libxml2-dev libgeos-dev libpq-devlibbz2-dev

    apt-get install gcc proj-bin libgeos-c1 osmis

    apt-get install php5 php-pear php5-pgsql php5-json php-db

    apt-get install postgresql postgis postgresql-contribpostgresql-9.3-postgis

    因为导入的地理数据格式为pbf,所以须要安装pbf支持软件

    apt-get install libprotobuf-c0-dev protobuf-c-compiler

    debian系统中,geos执行须要还有一个包

    apt-get install libgeos++-dev

    postgresql配置:

    打开/etc/postgresql/9.3/main中的postgresql.conf文件,设置例如以下属性:

    fsync = off

    full_page_writes = off

    详细命令为:

    sudo vim /etc/postgresql/9.3/main中的postgresql.conf

    .安装Nominatim

    1.下载源代码

    wget http://www.nominatim.org/release/Nominatim-2.2.0.tar.bz2

    tar xvf Nominatim-2.2.0.tar.bz2

    cd Nominatim-2.2.0

    ./sutogen.sh

    ./configure

    make

    2.Nominatim文件夹中的settings文件夹里新建local.php文件,

    配置例如以下:

    <?php

    // Paths

    @define('CONST_Postgresql_Version', '9.3');

    @define('CONST_Postgis_Version', '2.1');

    @define('CONST_Website_BaseURL', 'http://localhost/nominatim/');



    3.新建postgres用户账户:

    1.新建导入账户

    adduser <自己的username,example:mypg>

    passwd <password>

    su – postgres

    psql -template1

    界面切换到数据库的交互界面,敲入例如以下命令:

    CREATE USER <自己的username,example:mypg>WITH PASSWORD <password>

    退出数据库交互界面,敲入命令:q

    切换到root

    新建站点用户:

    createuser -SDR www-data

    更改nominatim的读取权限:

    chmod +x /soft_src

    chmod +x /soft_src/Nominatim-2.2.0

    chmod +x /soft_src/Nominatim-2.2.0/module

    倒入下载的OSM数据,并为其建立索引:

    下载数据地址为(pbf格式):

    http://download.geofabrik.de/openstreetmap/

    导入pbf数据:

    ./Nominatim-2.2.0/utils/setup.php --osm-file<自己下载的pbf数据,shanghai.osm.pbf>--all [--osm2pgsql-cache ]

    加入额外字段:

    ./Nominatim-2.2.0/utils/specialphrases.php –countries >specialphrases_countries.sql

    psql -d nominatim -f specialphrases_countries.sql

    ./Nominatim-2.2.0/utils/specialphrases.php –wiki-import >specialphrases.sql

    psql -d nominatim -f specialphrases.sql

    建立站点:

    sudo mkdir -m 755 /var/www/nominatim

    sudo chown <your username> /var/www/nominatim

    ./utils/setup.php --create-website /var/www/nominatim

    配置apache环境:

    打开/etc/apache2/sites-enabled/000-default,在最后加入例如以下内容:

    <Directory "/var/www/nominatim/">

    Options FollowSymLinks MultiViews

    AddType text/html .php

    </Directory>

    重新启动apache服务:

    service apache2 restart

    添加mypg对数据库nominatim的权限:

    su – postgres

    psql template1

    GRANT ALL PRIVILEGES ON DATABASE nominatim to mypg

    q



    4.执行nominatim

    浏览器登陆:http://http://localhost/nominatim/

    www-data用户有没有数据库读写权限,若没有,则打开/etc/apache2/envvars,改动

    export APACHE_RUN_USER=mypg

    export APACHE_RUN_GROUP=mypg

  • 相关阅读:
    黄聪:Visual Studio快速封装字段方法
    黄聪:在vs2008中设置jquery智能提示
    黄聪:Linq初级班 Linq to DataSet体验(单表、多表联合查询JOIN语法)
    mysql分区
    为什么使用框架
    阅读杂记(RSA,PDO)
    Golang之继承模拟
    php中$_REQUEST一个注意点
    记录mysql性能查询过程
    知识杂记
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/4211461.html
Copyright © 2011-2022 走看看