首页 其他文章 Google Map api国内正常使用该如何配置(2021最新)【投稿】
Google Map api国内正常使用该如何配置(2021最新)【投稿】
作者 : pjcourse 来源 : pjcourse 浏览 : 17 次 时间 : 2021-03-20 13:50:51
简述
最近有客户要求给他们网站做地图方面的功能,由于某些原因,网站必须使用google map,而且希望用到geocoding。大家知道google map api调用国内已经访问不了,虽然网上有很多教程,什么替换ip啊,把maps.google.com改成maps.google.cn。但其实这些方法都是掉了牙的,早就不管用。今天我把我的安装方法分享出来。

申请api接口

首先,我们需要申请Geocoding api和google map api。你得有一个google帐号,访问 google map api console,根据自己需求来申请相关的api。我申请的比较多。

Places API

Maps JavaScript API

Time Zone API

Geocoding API

Maps Static API

你们可以根据各自需求来申请。也可以访问www.pjcourse.com看最后的应用效果

image.png


申请这个比较简单,

1.新建项目

2.搜索相应api,申请

3.转到api和服务这一块,创建凭据。这些凭据就是api key,也用来限制api的具体应用范围。

image.png

4.最后需要做结算。现在结算是免费试用阶段,申请的话,只要有一张信用卡就可以,因为已经没有了中国地区的选项,所以地址选择香港。会扣除8港元,信用卡验证通过之后会退回。

这么一来,所以的申请算结束了。


配置子域名

我用的是cloudflare,所以直接在上面新开两个子域名,maps.example.com,mapsapis.example.com 。这里example替换成你自己的域名就可以。

配置ssl,我用的是let's encrypt,自动90天就会续签的。

sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d example.com -d www.example.com
sudo systemctl status certbot.timer

输出结果如下,就说明自动续签正常。

● certbot.timer - Run certbot twice daily
Loaded: loaded (/lib/systemd/system/certbot.timer; enabled; vendor preset: enabled)
Active: active (waiting) since Mon 2020-05-04 20:04:36 UTC; 2 weeks 1 days ago
Trigger: Thu 2020-05-21 05:22:32 UTC; 9h left
Triggers: ● certbot.service

安装必要的模块

我的配置环境是ubuntu 20.04, nginx。

  1. 安装replace-filter-nginx-module模块

安装之前,首先需要安装sregex

git clone https://github.com/agentzh/sregex
cd sregex/
make
make install

下载replace-filter-nginx-module

git clone https://github.com/agentzh/replace-filter-nginx-module
nginx -V

这里用到nginx -V。主要是把nginx的模块全部显示出来,等会需要重新编译。

wget https://nginx.org/download/nginx-1.18.0.tar.gz
tar xvf nginx-1.18.0.tar.gz
cd nginx-1.18.0/
./configure --with-cc-opt='-g -O2 -fdebug-prefix-map=/build/nginx-5J5hor/nginx-1.18.0=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -Wdate-time -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -fPIC' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --modules-path=/usr/lib/nginx/modules --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-compat --with-pcre-jit --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_v2_module --with-http_dav_module --with-http_slice_module --with-threads --with-http_addition_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module=dynamic --with-http_sub_module --with-http_xslt_module=dynamic --with-stream=dynamic --with-stream_ssl_module --with-mail=dynamic --with-mail_ssl_module --add-module=/root/replace-filter-nginx-module
make

这里注意一下,--add-module=/root/replace-filter-nginx-module。需要添加进去。其它的配置选项,参考你们自己的nginx -V参数结果。

一般重新编译的时候,都会有一堆报错。这主要是和你的模块配置参数有关,你只要把相应的模块安装上就可以。比如我遇到以下这些:

pcre

sudo apt-get install libpcre3 libpcre3-dev

gd lib

apt install libgd-dev

openssl

sudo apt-get install libssl-dev

最后,把nginx做个备份,再替换掉。

cp /usr/sbin/nginx /usr/sbin/nginx.bak
cp ./objs/nginx /usr/sbin/

配置nginx

在/etc/nginx/sites-enabled目录下,新建一个配置maps.example.com.conf。

server {# default_server;# default_server;
    server_name    maps.example.com mapsapis.example.com;
    location /maps/ {
	default_type text/javascript;
	proxy_set_header Accept-Encoding '';
	proxy_pass https://maps.googleapis.com/maps/;
	replace_filter_max_buffered_size 500k;
	replace_filter_last_modified keep;
	replace_filter_types text/javascript application/javascript;  
    
	replace_filter maps.googleapis.com mapsapis.example.com ig;
    }
    location /maps-api-v3/ {
        proxy_pass  https://maps.googleapis.com/maps-api-v3/;
    }
    listen [::]:443 ssl http2;
    listen 443 ssl http2;
    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; # managed by Certbot
}

至此,所有的配置已经完成。测试了一下,直接通过访问自己的子域名,就可以调用maps.googleapis.com的地图接口了。


image.png





上一篇: wordpress国内网速慢,解决网站加速及防DDOS攻击快速CF切换教程【投稿】

下一篇: 如何通过gzip和nginx来提高网站打开速度及整体性能【投稿】
版权声明:原创文章,转载时请注明原始出处,作者等相关信息。
本文连接:https://ntbk8.cn/index/d-132.html
留言
上传图片
评论列表

102 篇

文章总数

41681 次

浏览总数

94 条

评论总数

昵称 Telkobe
职业 PHP开发
家乡 四川南充
住址 暂居成都
QQ 946188985
文章搜索
热门文章
最新文章
新闻头条

1 纪实文学《第一书记》首发式在临沂市陶然居大酒店举行

2 95 后女孩糊墙 6 天赚 4 万,850 万粉丝点赞,央视都请她干活:早该火了

3 蚊香放在沙发上,中山市东升镇一出租屋凌晨起火

4 视频|拆不掉的“鸟巢”

5 视频|漫游费取消四年了 相关套餐为何仍在收费?

6 安置困境儿童10余人 普陀区检察院构建全方位保护体系守护“幼苗”

7 视频|男子地铁站内见网友被拒 奔现3小时后想轻生...

8 视频|家具城半夜清运建筑垃圾 居民:噪音大到睡不着

9 感悟终南——陈团结摄影作品展在“陌上花栖”启幕

10 花4000多元买猫刚一周多就病死 店方:可免费更换但无法退款

11 彻查!应急管理部:报请国务院安委会挂牌督办这一事故

12 新疆“透水”煤矿排水能力大幅提升,透水点封堵工作已启动

13 千灯湖向日葵花海开上央视!全国人民都在羡慕佛山南海人穿短袖

14 舍管员盗窃学生财物 昆明盘龙民警人赃并获

15 华为总裁二女儿5亿城堡曝光,生活奢华至极,网友:学学你大姐

16 无需高考,高二直接上清华,本硕博连读,这些同学怎么做到的?

17 惊险一幕!蓉遵高速上有辆小车发生自燃

18 高速路口 62 万车主违章,罚款过亿?查!

19 迈科集团挖掘新时代文化的魅力-开展跨越国界的文化交流

20 把14个艺术家关进废弃医院一周……能玩得多野?

21 以一敌百!幼儿园种植日 家长自带锄头秒杀全场

22 工业互联网平台覆盖产业链上中下游 这样的数字化让广东的制造业由“强”变“大”

23 视频|三位乘客都有驾驶证,开车的司机却是无证驾驶

24 今年“五一”假期,去这些地儿还能买到打折机票

25 全国肿瘤防治宣传周来临,大咖专家在沪畅谈消化道癌防治

26 兴谷街道:精心组织暖心服务齐到位,疫苗接种我带头!

27 开通绿色通道,山东庄镇多举措推进新冠疫苗接种工作

28 浦口民警快速救助受伤群众

29 新墨书房获评网红人气咖啡厅

30 当代名家(山东枣庄)交流会暨牛郎山采风活动顺利举行

历史上的今天

1 在326年前的今天,1695年4月13日 (农历三月初一),法国诗人让·德·拉封丹逝世。

2 在278年前的今天,1743年4月13日 (农历三月十九),美国第三任总统杰斐逊诞辰。

3 在120年前的今天,1901年4月13日 (农历二月廿五),中国共产党早期革命活动家赵世炎出生。

4 在117年前的今天,1904年4月13日 (农历二月廿八),俄舰队司令在海战中葬生。

5 在102年前的今天,1919年4月13日 (农历三月十三),巴伐利亚苏维埃共和国建立。

6 在102年前的今天,1919年4月13日 (农历三月十三),印度发生阿姆利则惨案 死亡1200人。

7 在82年前的今天,1939年4月13日 (农历二月廿四),黄河大合唱在延安首演。

8 在80年前的今天,1941年4月13日 (农历三月十七),日苏中立条约签订。

9 在77年前的今天,1944年4月13日 (农历三月廿一),苏联收复刻赤半岛。

10 在76年前的今天,1945年4月13日 (农历三月初二),苏联红军收复维也纳。

11 1949年4月13日 (农历三月十六),国共两党就国内和平协定举行谈判。

12 1950年4月13日 (农历二月廿七),新中国第一部法规《婚姻法》诞生。

13 1964年4月13日 (农历三月初二),普瓦捷赢得奥斯卡金奖。

14 1972年4月13日 (农历二月三十),我国恢复在万国邮联的合法权利。

15 1975年4月13日 (农历三月初二),乍得政局动荡。

16 1976年4月13日 (农历三月十四),教育部部长周荣鑫受“四人帮”的诬陷迫害在北京逝世。

17 1978年4月13日 (农历三月初七),文革后第一个外国交响乐团来华演出。

18 1987年4月13日 (农历三月十六),中葡签署《关于澳门问题的联合声明》。

19 1988年4月13日 (农历二月廿七),海南成为中国第31个省。

20 1988年4月13日 (农历二月廿七),“体操王子”李宁宣布退役。

21 1990年4月13日 (农历三月十八),苏联承认波兰卡廷事件是苏联所为。

22 1995年4月13日 (农历三月十四),摄影大师郎静山逝世。

23 1995年4月13日 (农历三月十四),新中国第一架超音速无人驾驶飞机试飞成功。

24 1997年4月13日 (农历三月初七),美国黑人选手创高尔夫球赛最低杆数。

25 1998年4月13日 (农历三月十七),广西失恋女投毒237名学生集体中毒。

26 1998年4月13日 (农历三月十七),中国妇女运动先驱帅孟奇逝世。

27 1998年4月13日 (农历三月十七),国家大剧院设计方案进行国际招标。

28 1998年4月13日 (农历三月十七),泰森经纪人称泰森将重新申请拳击执照。

29 2005年4月13日 (农历三月初五),第59届联合国大会通过《制止核恐怖行为国际公约》。

30 在1346年前的今天,0675年4月13日 (农历三月十三),唐高宗诏令武则天摄国政。

31 在1207年前的今天,0814年4月13日 (农历三月十九),保加利亚大公克鲁姆逝世。

百度统计 站长统计

©2018-2021 www.ntbk8.cn. All rights reserved.  蜀ICP备18006425号

友情链接:  若岚博客  vipbic  卢松松博客  快云vps  Geticsen  聚宝盆  飞之梦工作室  7分钟课堂  提交友链