Mapnik及apache2mod_tile配置
上一篇,我们配置好了PostgreSQL服务器,导入了测试数据。今天,我们来配置 mapnik2 + apache2 + mod_tile 的WMS服务器,以便在今后被 OpenLays访问。
<1> 下载mapnik2代码到本地
(通过系统包python-mapnik2安装即可,同时通过连接打包下载mapnik-master,解压至~/src目录mapnik)
[plain] view plain copy
- cd ~/src
- git clone https://github.com/mapnik/mapnik.git
- cd mapnik
<2>安装编译所需的库。
由于前面一篇安装过Boost,就简单了。
[plain] view plain copy
- sudo apt-get install libltdl-dev libltdl7 libpng12-dev libtiff4-dev
- sudo apt-get install libicu-dev python-cairo-dev python-nose libfreetype6-dev libfreetype6
- sudo apt-get install libcairo2-dev libcairomm-1.0-dev libgeotiff-dev libtiff4 libtiff4-dev (通过下载libtiff安装)
- sudo apt-get install libtiffxx0c2 libsigc++-dev libsigc++0c2 libsigx-2.0-2 libsigx-2.0-dev
- sudo apt-get install libgdal1-dev python-gdal imagemagick ttf-dejavu ttf-unifont
<3>进行配置、编译
[plain] view plain copy
- python scons/scons.py configure INPUT_PLUGINS=all OPTIMIZATION=3 SYSTEM_FONTS=/usr/share/fonts/truetype/
- python scons/scons.py
- sudo python scons/scons.py install
(通过上步骤中mapnik目录下找到scons.py)
最后,别忘了
sudo ldconfig
<4> 测试mapnik的运行正常
Python
>>>import mapnik
如果没有什么异样,就说明mapnik已经安装到系统中拉
<5>下载mapnik-style
mapnik 针对 OpenStreeMap的环境配置、图层定义有专门的一个包,svn下载:
(通过svn打包下载)
[plain] view plain copy
- cd ~/bin
- svn co http://svn.openstreetmap.org/applications/rendering/mapnik mapnik-style
mapnik 为了加快渲染速度,世界地图的底图以及level 9 之前的很多元素是存储在磁盘文件上的,而不是数据库。我们需要下载这四五百兆的东西。如果网速好,直接调用
[plain] view plain copy
- cd ~/bin/mapnik-style
- sudo ./get-coastlines.sh /usr/local/share
下载安装到 /usr/local/share/world_boundaries 下。但是,苦逼的网速实在不给力,wget下来的东西经常要等待很久,最后还是badCheck。我们要利用迅雷或者其他的下载工具,打开get-coastlines.sh,发现下面几行,
[plain] view plain copy
- $WGET http://tile.openstreetmap.org/world_boundaries-spherical.tgz -O $OUTDIR/world_boundaries-spherical.tgz
- $WGET http://tile.openstreetmap.org/processed_p.tar.bz2 -O $OUTDIR/processed_p.tar.bz2
- $WGET http://tile.openstreetmap.org/shoreline_300.tar.bz2 -O $OUTDIR/shoreline_300.tar.bz2
- $WGET http://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/10m-populated-places.zip -O $OUTDIR/10m-populated-places.zip
- $WGET http://www.naturalearthdata.com/http//www.naturalearthdata.com/download/110m/cultural/110m-admin-0-boundary-lines.zip -O $OUTDIR/110m-admin-0-boundary-lines.zip
用下载工具下完后,手工释放到/usr/local/share/world_boundaries 下,注意文件夹里没有套文件夹,不要变成 /usr/local/share/world_boundaries/world_boundaries
下载就完成了。
<6> 配置XML Include 参数
进入mapnik-style文件夹
[plain] view plain copy
- cd ~/bin/mapnik-style
- ./generate_xml.py --world_boundaries=/usr/local/share/world_boundaries --host=127.0.0.1 --port=5432 --user=www-data --password=您为www-data设置的密码 --dbname=osmgis
(eg:~/bin/mapnik-style# ./generate_xml.py --world_boundaries=/usr/local/share/world_boundaries --host=192.168.105.180 --port=5432 --user=www-data --password=huawei.123 --db
name=osmgis)
提示osm.xml已经配置好了:Include files written successfully! Pass the osm.xml file as an argument if you want to serialize a new version or test reading the XML
在 inc 文件夹下,产生了数据库、字体等配置文件。打开字体配置文件,可以看见
[html] view plain copy