背景
随着各类物联网项目建设推进,物联网设备的日益普及以及由此产生的数据,为了开启强大的信息监测能力,我们越来越多的依赖地理信息系统(GIS)。虽然当前在公网环境可以方便的获取到免费GIS服务(如百度地图、腾讯地图、高德地图等),但有些项目因为处于专网环境,客户不允许电脑访问公网,导致必须要在专网环境花费较多成本自建GIS服务。对于预算有限的项目,我们是否有简单的方法实现专网客户使用公网免费GIS服务呢?下面介绍在线代理服务器地址,通过可以访问公网的代理服务器来实现专网电脑访问高德GIS服务。
分析过程
src=“https://webapi.amap.com/maps?v=1.4.15&key=您申请的key”。
location /maps {proxy_pass https://webapi.amap.com/maps; }
修改高德地图demo html文件,将【代理服务器默认使用80端口】
src="https://webapi.amap.com/maps?v=1.4.15&key=您申请的key"
修改为
src="http://代理服务器ip/maps?v=1.4.15&key=您申请的key”。
为了使获取js api文件之后的访问都经过代理服务器,我们需要代理服务器返回js api文件时修改相应地址为代理服务器地址。为了实现此目的在线代理服务器地址,nginx代理服务器需要添加http_sub_module模块,重新编译nginx以生成新的bin文件,编译配置
-–prefix=/usr/local/nginx--add-module=…/nginx-rtmp-module-1.2.1--with-http_ssl_module--with-http_stub_status_module--with-pcre=…/pcre-8.43--with-openssl=…/openssl-1.1.1d--with-zlib=…/zlib-1.2.11--with-http_flv_module--with-http_mp4_module--with-stream--with-stream_ssl_module--with-stream_ssl_preread_module--with-http_realip_module --with-http_sub_module。
http://vdata.amap.com/style_icon/icon-normal-small.png
http://vdata.amap.com/style_icon/icon-biz-small.png
暂时没找到访问这两个图标集的源头,通过修改本机hosts文件采用代理方式来访问(hosts文件增加配置:代理服务器ip vdata.amap.com),nginx增加如下代理配置:
location /style_icon/ {
proxy_pass http://vdata.amap.com/style_icon/;
}
server {
listen 80;
server_name localhost;
#add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Headers X-Requested-With;
add_header Access-Control-Allow-Methods GET,POST,OPTIONS;
location / {
root html;
index index.html index.htm;
}
location /restapi/ {
proxy_pass https://restapi.amap.com/;
}
location /webapi/ {
proxy_pass https://webapi.amap.com/;
}
location /vdata/ {
proxy_pass https://vdata.amap.com/;
}
location /wprd01/ {
proxy_pass https://wprd01.is.autonavi.com/;
}
location /wprd02/ {
proxy_pass https://wprd02.is.autonavi.com/;
}
location /wprd03/ {
proxy_pass https://wprd03.is.autonavi.com/;
}
location /wprd04/ {
proxy_pass https://wprd04.is.autonavi.com/;
}
location /webrd01/ {
proxy_pass https://webrd01.is.autonavi.com/;
}
location /webrd02/ {
proxy_pass https://webrd02.is.autonavi.com/;
}
location /webrd03/ {
proxy_pass https://webrd03.is.autonavi.com/;
}
location /webrd04/ {
proxy_pass https://webrd04.is.autonavi.com/;
}
location /style_icon/ {
proxy_pass http://vdata.amap.com/style_icon/;
}
#代理获取js api文件并修改文件内容
location /maps {
proxy_set_header Accept-Encoding "";
proxy_pass https://webapi.amap.com/maps;
sub_filter_types *;
sub_filter_once off;
sub_filter 'http://webapi.amap.com' 'http://代理服务器ip/webapi';
sub_filter 'https://webapi.amap.com' 'http://代理服务器ip/webapi';
sub_filter 'http://restapi.amap.com' 'http://代理服务器ip/restapi';
sub_filter 'http://vdata.amap.com' 'http://代理服务器ip/vdata';
sub_filter 'vdata.amap.com' '代理服务器ip/vdata';
sub_filter 'webapi.amap.com/count' '代理服务器ip/webapi/count';
sub_filter 'wprd0{1,2,3,4}.is.autonavi.com' '代理服务器ip/wprd0{1,2,3,4}';
sub_filter 'webapi.amap.com/theme' '代理服务器ip/webapi/theme';
sub_filter 'restapi.amap.com/v4' '代理服务器ip/restapi/v4';
sub_filter 'webapi.amap.com/style' '代理服务器ip/webapi/style';
}
}
娜娜项目网每日更新创业和副业教程
网址:nanaxm.cn 点击前往娜娜项目网
站 长 微 信: nanadh666
声明: 本站内容转载于网络,版权归原作者所有,仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任,若侵犯到你的版权利益,请联系我们,会尽快删除处理!