source: subversion/applications/utils/export/cgimap/README @ 13751

Last change on this file since 13751 was 13751, checked in by zere, 11 years ago

Fixed up stupid directory structure from misuse of svn import.

File size: 2.1 KB
Line 
1                              CGImap 0.5
2                              ==========
3
4Overview
5========
6
7CGImap is a C++ implementation of the OpenStreetMap "map" call as an
8FCGI process. The rails implementation of the "map" call has a few
9problems with memory - it uses a lot of it and there is a leak which
10makes it annoying to use in long-running environments, like the main
11OSM server.
12
13CGImap attempts to address these memory problems and makes it easier
14to optimise the queries, something which is also a bit of a pain to do
15in Rails.
16
17Requirements
18============
19
20CGImap depends on the following libraries. Versions used during
21development are in brackets. Other versions may work, but YMMV.
22
23  * libxml2 (2.6.32.dfsg-4ubuntu1)
24  * mysql++ (3.0.0-1)
25  * libfcgi (2.4.0-7)
26
27If you're running a Debian or Ubuntu system these can be installed
28using the following command:
29
30  sudo apt-get install libxml2-dev libmysql++-dev libfcgi-dev
31
32The build system used is GNU Make, using pkg-config to provide some of
33the flags.
34
35Setup
36=====
37
38A sample lighttpd.conf file is provided, which I've been using to
39test. No testing has been done with other FCGI servers, but if you
40find a problem please report it on the OSM trac.
41
42CGImap expects the following environment variables to be set:
43
44  * DB_HOST: Hostname or IP address of the database server.
45  * DB_NAME: Name of the database.
46  * DB_USER: Name of the user to connect as.
47  * DB_PASS: Password of the user to connect as.
48
49Optionally, DB_CHARSET can be set to the connection charset to
50use. The default is "utf8".
51
52CGImap requires permissions to SELECT and CREATE TEMPORARY on the
53MySQL server. It is recommended that a separate account is created for
54CGImap to avoid any possibility of data corruption. Care has been
55taken programming CGImap but, as with most C++ applications, there is
56the chance of an exploitable flaw leading to complete pwnage.
57
58Acknowledgements
59================
60
61CGImap contains code from and is partly based on the following:
62
63  * modosmapi (http://code.google.com/p/modosmapi/) by
64      d40cht and japplebyalis.
65  * quad_tile.c
66      (http://svn.openstreetmap.org/sites/rails_port/db/functions/maptile.c)
67      by TomH.
Note: See TracBrowser for help on using the repository browser.