MapProxy的部署与TMS地图服务代理_做GIS梦的人
從網上偶然看到,現在有一些專業的地圖服務代理服務器,不僅可以本地緩存地圖服務、地圖瓦片,而且可以對地圖服務進行重新投影切片等。瞬間得到一個啟發,當前google在線地圖不能使用的情況下,是否可以架設一個地圖代理服務器,供自己內部使用呢?
地圖代理服務,自己開發起來也簡單,但是短時間內實現緩存、重投影等多重功能,還是不太可能的。這里就以MapProxy為例,簡單介紹一下如何部署和實現代理。
文章目錄
參考網址
環境
部署
測試代理地圖服務
參考網址
英文官網
中文參考地址
環境
windows 10
Python 3.9.5
部署
MapProxy在windows上的部署還是非常方便的,直接使用pip安裝,電腦上只要有python環境就行。
# 安裝 MapProxy
pip install MapProxy
# 由于PROJ通常在Windows系統上不可用,因此還需要安裝Python包 `pyproj`
pip install pyproj
# 驗證安裝版本
mapproxy-util --version
# 創建MapProxy的配置文件:
mapproxy-util create -t base-config mymapproxy
#這句命令會創建一個名叫mymapproxy的文件夾,里面包含一個最小的示例配置(mapproxy.yaml 和 seed.yaml),以及兩個完成的示例配置文件(full_example.yaml and full_seed_example.yaml)。
cd mymapproxy
mapproxy-util serve-develop mapproxy.yaml #默認端口8080
# 指定端口啟動
mapproxy-util serve-develop mapproxy.yaml -b 0.0.0.0:8011
瀏覽器訪問http://localhost:8080/#/ 就可以進入頁面,如果想看代理的服務,直接點擊demo
測試代理地圖服務
MapProxy支持對WMS、WMS-C、WTMS、TMS等服務的代理,所有的都只需要你在yml文件里配置,上手還是比較快的,對不懂開發人是很友好的。我的測試配置如下mapproxy.yaml:
services:
demo:
tms:
use_grid_names: true
# origin for /tiles service
origin: 'nw'
kml:
use_grid_names: true
wmts:
wms:
md:
title: MapProxy WMS Proxy
abstract: This is a minimal MapProxy example.
layers:
- name: osm_utm
title: 智圖測試
sources: [osm_cache_tile]
caches:
osm_cache_tile:
grids: [osm_grid]
# true會禁用本地緩存
disable_storage: false
# a tile source you want to reproject
sources: [osm_source]
sources:
osm_source:
type: tile
grid: osm_grid
url: https://map.geoq.cn/ArcGIS/rest/services/ChinaOnlineCommunity/MapServer/tile/%(z)s/%(y)s/%(x)s
grids:
webmercator:
base: GLOBAL_WEBMERCATOR
osm_grid:
base: GLOBAL_MERCATOR
srs: 'EPSG:3857'
origin: nw
globals:
這里一定要注意:
對于TMS服務的url,一定是%(z)s/%(y)s/%(x)s這種格式的,不能是{z}/{y}/{x}
預覽效果圖
查看本地mapproxy.yaml所在同級目錄下,出現了一個cache_data文件夾,點進去可以看到都是緩存的瓦片
本文轉自 https://blog.csdn.net/GISuuser/article/details/121394995,如有侵權,請聯系刪除。
總結
以上是生活随笔為你收集整理的MapProxy的部署与TMS地图服务代理_做GIS梦的人的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 孕妇运动 适合孕妇的7种运动
- 下一篇: 郭兰英老公(郭兰英个人简历表)