Mapserver
From OpenStreetMap
Mapserver serves maps to clients in cool ways, e.g. through a WMS server. You can drop a shapefile in a dir and it will get displayed on the map served by mapserver.
Setting up a Mapserver at home
The following steps are necessary to set up Christopher's OSM implementation using mapserver (from a ML-mail).
All the bits for the freemap.in renderer:
- Requires Mapserver to be installed
- PROJ support required
- WMS Client support required
- gdal must be installed
- With Python bindings for processing data
- Requires mapscript PHP bindings
Data processing:
Planet:
- Download planet.osm
- Run it through http://london.freemap.in/osm2gml_simple.py.txt:
python osm2gml_simple.py.txt < planet.osm > planet.gml
- Run:
ogr2ogr planet.segments.shp planet.gml segments ogr2ogr planet.ways.shp planet.gml ways
SWBD:
- Download ftp://e0srp01u.ecs.nasa.gov/srtm/version2/SWBD recursively
- Unzip all zips
- Move resulting files (3 per zip) into a single directory
- Run each file through http://london.freemap.in/swbd2line.py.txt
- Run resulting shapefiles through ogrtindex:
find world_mask/ -name '*.shp' | xargs ogrtindex world_tindex.shp
Once those are complete:
http://london.freemap.in/map/july.mercator.planet.map
should be set up as a map file. (Drop it into a directory.)
Copy http://london.freemap.in/tile.phps into a web accessible directory. Copy http://london.freemap.in/config.phps into the same directory, and alter:
"osm-july-merc" => array( "july mercator Planet.osm",
"/www/freemap.in/london/map/july.mercator.planet.map",
array( 822116.8933, 411058.4466, 205529.2233,
102764.6117, 51382.3058, 25691.1529, 12845.5765,
6422.7882, 3211.3941, 1605.6971 ) ,
"PNG24"),
to point to the correct file location. (Don't worry about the scale levels -- they don't matter.)
Copy the HTML from http://london.freemap.in/osm.html and put it somewhere you want it to be.
If you have any questions about completing this process, please email me off list.
I don't have any plans to maintain the current london.freemap.in sites, as I'm told they're no longer useful due to the age of the data. If someone is using this data for something, please let me know, and I will make sure I take care of meeting your needs.
Regards, -- Christopher Schmidt Web Developer

