forked from mauricesvay/Routino
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathINSTALL.txt
165 lines (127 loc) · 6.8 KB
/
INSTALL.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
Routino : Installation
======================
Compilation
-----------
This program has been written to run on Linux, no cross-platform
compatibility has been specifically included but on the other hand
nothing platform specific has been knowingly included either.
Any information on improving the compilation process on anything other
than 32-bit x86 Linux is welcome.
No external libraries are required and the programs are written in
standard C language.
To compile the programs just type 'make'.
Installation
------------
After compilation the executable files are copied into the directory
web/bin and the default XML configuration files are copied into the
directory web/data. This is in preparation for using the supplied
example web pages but is also a useful location to copy the files from
for normal use.
The executable files are called 'planetsplitter', 'router' and
'filedumper' (also 'tagmodifier' for debugging tag modifications). They
can be copied to any location and need no special installation
environment.
The default configuration files are called 'profiles.xml',
'tagging.xml' and 'translations.xml'. The names of the configuration
files can be specified on the command line but by default are also
looked for in the directory that contains the routing database.
Example Web Page
----------------
The directory 'web' contains a set of files that can be used to create
a working set of web pages with interfaces to the routing algorithm.
The files in the 'web' directory will require copying to a location
that is accessible by a web server. After copying the files some of
them need to be edited; search through the files for lines that contain
the words "EDIT THIS" and make appropriate edits. The files that need
editing are 'paths.pl' (to set the directory paths) and 'router.js' and
'visualiser.js' to limit the range of the visible map (latitude,
longitude and zoom).
Configuration of web files
--------------------------
The assumption in this description is that the whole of the directory
called web is copied into a directory that is accessible by an Apache
web server.
**************************************************************************
**** This is not a secure configuration but an easy one to configure. ****
**** Only the directory 'www' should be accessible by the web server. ****
**** Do not use this configuration unmodified in a public web server. ****
**************************************************************************
The directory structure is as follows:
web/
|
+ /bin/ <- The Routino executable files (when compiled).
|
+ /data/ <- The Routino database and default configuration
| files.
|
+ /results/ <- An empty directory to store the results.
|
+ /www/ <- The files that must be available to the web
| server are below this level.
|
+ /openlayers/ <- A directory to hold the OpenLayers scripts.
|
+ /routino/ <- The main HTML, Javascript, CSS and CGI files.
|
+ /documentation/ <- The HTML version of the Routino documentation.
The directory 'bin' will be filled by running the compilation process.
For a secure installation the 'bin' directory should be outside of the
web server, the file 'www/routino/paths.pl' contains the path to the
'bin' directory.
The directory 'data' must contain the Routino database and is also the
default location for the configuration files. The routing database is
created by downloading the OSM files for the region of interest and
running the 'planetsplitter' program. There is a script in the
directory that will download the OSM files and create the required
database. The script should be edited to set the names of the files to
be downloaded. For a secure installation the 'data' directory should
be outside of the web server, the file 'www/routino/paths.pl' contains
the path to the 'data' directory.
The directory 'results' is a temporary directory that it used to hold
the GPX and text files generated by the Routino router. The directory
must be writable by the web server process since it is the CGI scripts
that are run by the web server that writes the results here. For a
secure installation the results directory should be outside of the web
server, the file 'www/routino/paths.pl' contains the path to the
results directory.
The directory 'www' and its sub-directories are the only ones that need
to be within the web server accessible directory.
The directory 'www/openlayers' must be filled with the openlayers
Javascript library that can be downloaded from
http://www.openlayers.org/. (This version of Routino has been tested
with OpenLayers library version 2.10). The files must be installed so
that the file 'www/openlayers/OpenLayers.js' and the directories
'www/openlayers/img/', 'www/openlayers/theme/' all exist. There is a
script in the directory that will automatically download and the files,
create an optimised "OpenLayers.js" and copy the files to the required
locations.
The directory 'www/routino' contains the main HTML, Javascript and CSS
files as well as the CGI scripts that perform the server-side routing
functions. The description below lists all of the files that contain
editable information.
paths.pl
This contains the names of the directories that contain the
executable files, router database and temporary results.
router.pl
This file contains the filename prefix for the routing database
files (only needed if planetsplitter is run with the --prefix
option).
router.js
The parameters in this file control the boundary of the visible
map (defaults to UK), the minimum and maximum zoom levels
(defaults to between 4 and 15 inclusive) and the source of map
tiles (defaults to the main OpenStreetMap tile server).
visualiser.js
The same parameters as in router.js are in this file.
The directory www/routino/documentation contains the HTML version of
the Routino documentation.
Configuration of web server
---------------------------
The file 'www/routino/.htaccess' contains all of the Apache
configuration options that are required to get the example web pages
running. The only problem is that because of the way that the
"AllowOverride" option works one of the configuration options has been
commented out. This must be enabled in the main Apache server
configuration file.
--------
Copyright 2008-2010 Andrew M. Bishop.