首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我正在尝试使用mapnik mod_tile和apache配置我自己的地图服务器,但没有生成切片,并且出现以下错误

我正在尝试使用mapnik mod_tile和apache配置我自己的地图服务器,但没有生成切片,并且出现以下错误
EN

Stack Overflow用户
提问于 2013-05-30 19:29:30
回答 2查看 9.2K关注 0票数 3
代码语言:javascript
复制
I started this
renderd -f -c /usr/local/etc/renderd.conf
got this
renderd[1620]: Rendering daemon started
renderd[1620]: Initiating reqyest_queue
iniparser: syntax error in /usr/local/etc/renderd.conf (7):
-> ;[renderd01]
iniparser: syntax error in /usr/local/etc/renderd.conf (14):
-> ;[renderd02]
iniparser: syntax error in /usr/local/etc/renderd.conf (33):
-> ;** config options used by mod_tile, but not renderd **
iniparser: syntax error in /usr/local/etc/renderd.conf (42):
-> ;[style2]
iniparser: syntax error in /usr/local/etc/renderd.conf (49):
-> ;** config options used by mod_tile, but not renderd **
renderd[1620]: Parsing section renderd
renderd[1620]: Parsing render section 0
renderd[1620]: Parsing section mapnik
renderd[1620]: Parsing section default
renderd[1620]: config renderd: unix socketname=/var/run/renderd/renderd.sock
renderd[1620]: config renderd: num_threads=4
renderd[1620]: config renderd: num_slaves=0
renderd[1620]: config renderd: tile_dir=/var/lib/mod_tile
renderd[1620]: config renderd: stats_file=/var/run/renderd/renderd.stats
renderd[1620]: config mapnik:  plugins_dir=/usr/local/lib/mapnik/input
renderd[1620]: config mapnik:  font_dir=/usr/share/fonts/truetype/ttf-dejavu
renderd[1620]: config mapnik:  font_dir_recurse=1
renderd[1620]: config renderd(0): Active
renderd[1620]: config renderd(0): unix socketname=/var/run/renderd/renderd.sock
renderd[1620]: config renderd(0): num_threads=4
renderd[1620]: config renderd(0): tile_dir=/var/lib/mod_tile
renderd[1620]: config renderd(0): stats_file=/var/run/renderd/renderd.stats
renderd[1620]: config map 0:   name(default) file(/home/mayank/src/mapnik-style/osm.xml) uri(/osm_tiles/) htcp() host(localhost)
renderd[1620]: Initialising unix server socket on /var/run/renderd/renderd.sock
renderd[1620]: Created server socket 5
renderd[1620]: Renderd is using mapnik version 2.0.3
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-Bold.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-BoldOblique.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif-Bold.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Oblique.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerifCondensed.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-BoldOblique.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif-BoldItalic.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerifCondensed-Italic.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-ExtraLight.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed-Oblique.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-Oblique.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed-BoldOblique.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerifCondensed-BoldItalic.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed-Bold.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerifCondensed-Bold.ttf
renderd[1620]: DEBUG: Loading font: /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif-Italic.ttf
Running in foreground mode...
debug: init_storage_backend: initialising file storage backend at: /var/lib/mod_tile
renderd[1620]: Starting stats thread
/home/mayank/src/mapnik-style/inc/entities.xml.inc:9: parser warning : PEReference: %layers; not found
%layers;
        ^
debug: init_storage_backend: initialising file storage backend at: /var/lib/mod_tile
/home/mayank/src/mapnik-style/inc/entities.xml.inc:9: parser warning : PEReference: %layers; not found
%layers;
        ^
debug: init_storage_backend: initialising file storage backend at: /var/lib/mod_tile
debug: init_storage_backend: initialising file storage backend at: /var/lib/mod_tile
/home/mayank/src/mapnik-style/inc/entities.xml.inc:9: parser warning : PEReference: %layers; not found
%layers;
        ^
/home/mayank/src/mapnik-style/inc/entities.xml.inc:9: renderd[1620]: An error occurred while loading the map layer 'default': XML document not well formed: 
Entity 'datasource-settings' not defined (encountered in file '/home/mayank/src/mapnik-style/osm.xml' at line 4066)
parser warning : PEReference: %layers; not found
%layers;
        ^
renderd[1620]: An error occurred while loading the map layer 'default': XML document not well formed: 
Entity 'datasource-settings' not defined (encountered in file '/home/mayank/src/mapnik-style/osm.xml' at line 4066)
renderd[1620]: An error occurred while loading the map layer 'default': XML document not well formed: 
Entity 'datasource-settings' not defined (encountered in file '/home/mayank/src/mapnik-style/osm.xml' at line 4066)
renderd[1620]: An error occurred while loading the map layer 'default': XML document not well formed: 
Entity 'datasource-settings' not defined (encountered in file '/home/mayank/src/mapnik-style/osm.xml' at line 4066)
renderd[1620]: DEBUG: Got incoming connection, fd 8, number 1
renderd[1620]: DEBUG: Got command RenderPrio fd(8) xml(default), z(0), x(0), y(0)
renderd[1620]: Received request for map layer 'default' which failed to load
renderd[1620]: DEBUG: Connection 0, fd 8 closed, now 0 left

我正在使用http://switch2osm.org/serving-tiles/manually-building-a-tile-server-12-04/作为参考。任何帮助和我都尝试过从包构建地图服务器有一个sock问题,所以切换到这里sock问题可以使用sudo mkdir /var/run/renderd sudo chown mayank /var/run/renderd纠正

EN

Stack Overflow用户

回答已采纳

发布于 2014-07-07 12:10:32

多么戏剧性的一幕!switch2osm.org上的这篇文章需要一些更新。无论如何,要修复上述错误:

转到~/src/mapnik-style并运行

代码语言:javascript
复制
python generate_xml.py --dbname gis --world_boundaries "/usr/local/share/world_boundaries" --accept-none

这将重置您的mapnik样式配置并修复那些%layers错误。

注意:您的world_boundaries文件夹位置可能与我的不同。通过键入find /usr -type d -name "*world_boundaries*" -print查找您的

接下来,您可能会遇到像An error occurred while loading the map layer 'default': Could not create datasource for type: 'shape'这样的错误。这是因为renderd有错误的插件目录。要查找您的,请键入find /usr -type d -name "*mapnik*" -print,您将得到类似以下内容之一的内容(可能还有一些我们并不关心的其他内容):

  • /usr/lib/mapnik
  • /usr/local/lib/mapnik
  • /usr/lib64/mapnik

转到您找到的文件夹并检查它是否包含input目录。我的里面没有别的东西。这是你的renderd mapnik插件目录。编辑您的/usr/local/etc/renderd.conf文件,将插件目录更改到此位置。

作为参考,我的最终renderd.conf文件包含:

代码语言:javascript
复制
[renderd]
socketname=/var/run/renderd/renderd.sock
num_threads=4
tile_dir=/var/lib/mod_tile
stats_file=/var/run/renderd/renderd.stats

[mapnik]
plugins_dir=/usr/lib/mapnik/input
font_dir=/usr/share/fonts/truetype/ttf-dejavu
font_dir_recurse=1

[default]
URI=/osm_tiles/
TILEDIR=/var/lib/mod_tile
XML=/home/julian/src/mapnik-style/osm.xml
HOST=localhost
TILESIZE=256

我删除了renderd.conf中的所有注释行,因为它们似乎没有什么用处,并且在呈现输出的顶部创建了语法错误。

另外,我的~/src/mapnik-style/inc/datasource-settings.xml.inc文件包含:

代码语言:javascript
复制
<Parameter name="type">postgis</Parameter>
<!-- <Parameter name="password"></Parameter> -->
<!-- <Parameter name="host"></Parameter> -->
<!-- <Parameter name="port"></Parameter> -->
<!-- <Parameter name="user"></Parameter> -->
<Parameter name="dbname">gis</Parameter>
<!-- this should be 'false' if you are manually providing the 'extent' -->
<Parameter name="estimate_extent">false</Parameter>
<!-- manually provided extent in epsg 900913 for whole globe -->
<!-- providing this speeds up Mapnik database queries -->
<Parameter name="extent">-20037508,-19929239,20037508,19929239</Parameter>

我认为这就是消除这些错误所需的一切。如果没有,请评论,我会尽我最大的努力更新这个答案。

票数 3
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16834983

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档