This is quite simple to setup.
Follow the instructions at: https://mapproxy.org/docs/1.13.1/install.html
An example setup for OpenStreetMap can be found here: https://wiki.openstreetmap.org/wiki/MapProxy
I modified the above to give the following:
# Starts the following services: # Demo: # http://localhost:8080/demo # WMS: # capabilities: http://localhost:8080/service?REQUEST=GetCapabilities # WMTS: # capabilities: http://localhost:8080/wmts/1.0.0/WMTSCapabilities.xml services: #sets up how to make the source data available demo: tms: use_grid_names: true # origin for /tiles service origin: 'nw' kml: use_grid_names: true wms: #srs sets the coordinate reference systems as which you want to make your data available. MapProxy reprojects the source data very well to these projections. srs: ['EPSG:900913','EPSG:3857'] image_formats: ['image/jpeg', 'image/png'] md: # metadata used in capabilities documents title: MapProxy WMS Proxy abstract: This is the fantastic MapProxy. online_resource: http://mapproxy.org/ contact: person: Your Name position: Technical Director organization: Some Company address: Long street city: Timbuktu postcode: 123456AD country: South Pole email: info@example.com access_constraints: This service is intended for private and evaluation use only. The data is licensed as Creative Commons Attribution-Share Alike 2.0 (http://creativecommons.org/licenses/by-sa/2.0/) fees: 'None' layers: #sets up which layers you want to make available using the services above. You can add many, but let's stick to osm data here. - name: osm title: Open Streetmap Tiles sources: [osm_cache] #this layer should use the osm_cache (defined below) as it's source. - name: openseamap title: Open Sea Map Tiles sources: [sea_cache] #this layer should use the osm_cache (defined below) as it's source. caches: #setup the cache for the open streetmap tiles. This cache is used by the layer above. osm_cache: sources: [osm_tiles] #here you set what source data (defined below) you want to cache format: image/png grids: [GLOBAL_MERCATOR] sea_cache: sources: [sea_tiles] #here you set what source data (defined below) you want to cache format: image/png grids: [GLOBAL_MERCATOR] sources: osm_tiles: #the osm_tiles source refers to the openstreetmap.org tiles. These will be downloaded upon request (if not already cached) and served by MapProxy type: tile transparent: true url: http://c.tile.openstreetmap.org/%(tms_path)s.%(format)s grid: osm_grid #the grid to use for the osm tiles. This is really important. It is specified below. http: ssl_no_cert_checks: true hide_error_details: true sea_tiles: type: tile transparent: true url: http://t1.openseamap.org/seamark/%(tms_path)s.%(format)s grid: osm_grid #the grid to use for the osm tiles. This is really important. It is specified below. http: ssl_no_cert_checks: true hide_error_details: true grids: osm_grid: #this srs and origin specify a grid that can be used elsewhere in the configuration. In this example it is used for the osm_tiles source. These settings are correct for openstreetmap.org tiles. #The google mercator srs is used (also called EPSG:900913), and the origin of the tiles is north-west). If you get this wrong, you might very well get an all-blue world. srs: EPSG:900913 origin: nw globals: #next are some global configuration options for MapProxy. They mostly explain themselves, or can be looked-up in the MapProxy docs. cache: # where to store the cached images base_dir: './cache_data' # where to store lockfiles lock_dir: './cache_data/locks' # image/transformation options image: resampling_method: bilinear jpeg_quality: 90
If you need to request new tiles after a period of time add the following to the global section:
tiles: expires_hours: 336
Comments
Post a Comment