ArcGIS API for JavaScript 4.x 本地部署之Nginx法
上篇ArcGIS API for JavaScript 4.x 离线配置之IIS法提到,如何用IIS配置ArcGIS jsAPI;
本篇则使用http下的Nginx配置,其原理基本一致。https的部署方法暂时没有试验。下篇使用Apache和Tomcat配置。
【环境说明】操作系统Windows10,Nginx版本1.14.2,浏览器Chrome 69,jsAPI版本4.10
1. 安装Nginx(Windows)
Nginx不需要安装,解压即可使用。解压到D盘根目录后如图:

如果点开nginx.exe,黑框闪过,在任务管理器看不到nginx.exe的进程,说明nginx默认端口——80端口被占用,到conf文件夹下找nginx.conf修改,我这里改为1570
(端口随意,你开心就好,端口知识不再补充)
安装完毕,浏览器输入localhost:1570,打开没问题:

在html目录(即localhost:1570这台服务器下的默认站点文件夹)下创建如下一个名称为myindex的html文档以测试是否成功:


看起来没问题。
2. 配置jsAPI
解压jsAPI到html目录下(与上篇相同的拖拽解压法~):

从上一步得知
- http:\\localhost:1570 等价于 D:\nginx-1.14.2\
故
- [HOSTNAME_AND_PATH_TO_JSAPI] 等价于 localhost:1570/arcgis_js_v410_api/arcgis_js_api/library/4.10/
所以init.js和dojo.js的物理地址和网络地址应为:
- init.js[物理]:D:\nginx-1.14.2\html\arcgis_js_v410_api\arcgis_js_api\library\4.10\init.js
- dojo.js[物理]:D:\nginx-1.14.2\html\arcgis_js_v410_api\arcgis_js_api\library\4.10\dojo\dojo.js
- init.js[网络]:http://localhost:1570/arcgis_js_v410_api/arcgis_js_api/library/4.10/init.js
- dojo.js[网络]:http://localhost:1570/arcgis_js_v410_api/arcgis_js_api/library/4.10/dojo/dojo.js
替换这两个文件内的 [HOSTNAME_AND_PATH_TO_JSAPI] 字符串,操作如下图所示:


若没有开启https,则需要把https改成http,如下图:


测试通过。
3. Nginx配置文件conf\nginx.conf
这个属于本人的补充知识(因为后端很菜——好吧都菜),懂的可以跳过。
和IIS一样,也可以配置默认主页/默认文档,但是它是使用conf配置文件实现,现在如下修改:

然后重启一下nginx
nginx -s reload
有时候这条命令不起作用,到任务管理器kill掉nginx进程,再重启一下nginx即可。
ps:重启nginx服务器时需要浏览器关闭状态。
此时访问http://localhost:1570如下图所示:

完事(第四行// This is dojo.js 是我自己加的注释,为了辨认是否是dojo.js或init.js)。
参考博客
Nginx Windows详细安装部署教程 -taiyonghai- https://www.cnblogs.com/taiyonghai/p/9402734.html
nginx配置文件nginx.conf超详细讲解 -隔壁老梁- https://www.cnblogs.com/liang-wei/p/5849771.html
Nginx + Https本地部署ArcGIS JavaScript API 4.4/4.5 -liuyl89- https://www.jianshu.com/p/24488c6fbc30
ArcGIS API for JavaScript 4.x 本地部署之Nginx法的更多相关文章
- ArcGIS API for JavaScript 4.x 本地部署之IIS法
[导读] 关于如何在默认网站(Default Web Site,物理地址C:\inetpub\wwwroot\)启动,已有很多博客详尽地写好了. 本篇在自建网站(本机)中配置http而非https的j ...
- ArcGIS API for JavaScript 4.x 本地部署之Apache(含Apache官方下载方法)
IIS.Nginx都说了,老牌的Apache和Tomcat也得说一说(如果喜欢用XAMPP另算) 本篇先说Apache. 安装Apache 这个...说实话,比Nginx难找,Apache最近的版本都 ...
- ArcGIS API for JavaScript 4.x 本地部署之跨域问题解决法:CORS
众所周知,在离线部署ArcGIS API for JavaScript时,有时候会产生微件上的字体.符号变成方框的问题.这是遇到了跨域,只需要对所在服务器进行配置即可. 本篇使用的环境是:API配置在 ...
- ArcGis API for JavaScript学习——离线部署API
ArcGis API for JavaScript开发笔记——离线部署API 以3.18版API为例: 在加载图图前引用GIS服务是必须的.有两种方法,一是在线引用,而是离线部署引用. 在线引用: & ...
- arcgis api for javascript本地部署加载地图
最近开始学习arcgis api for javascript,发现一头雾水,决定记录下自己的学习过程. 一.下载arcgis api for js 4.2的library和jdk,具体安装包可以去官 ...
- Arcgis api for javascript学习笔记(4.5版本) - 本地部署及代理配置
在开发过程中,由于api的文件比较多,没必要每个项目都将api加入到解决方案中.况且在VS中如果将api加入解决方案,在编写css或js代码时,由于智能提示需要扫描脚本等文件,会导致VS很卡.所以个人 ...
- 【1】ArcGIS API for JavaScript 4.5/4.6 本地部署
惭愧,和我的学弟比起来,我所开始接触前端开发,ArcGIS API for JavaScript的时间和深度远远不及于他. 一年之尾,亦是一年之始,我也将正式开始我的博客生涯.本人在校学习并且做项目, ...
- ArcGIS api for javascript 离线部署
一.说明: 1.本篇文章以及之后的相关的文章所使用的ArcGIS API for javascript 的版本是3.3.初学者为了学习简单,可以引用在线的 Javascript.但是如果只能连接内网, ...
- 下载并部署 ArcGIS API for JavaScript 4.10
学习ArcGIS API for JavaScript 4.10 的第一步就是下载并部署该文件. 有的读者由于之间没接触过,不知道怎么下载和部署文件.这些读者要求作者详细的写一篇关于下载和部署的文章( ...
随机推荐
- Http Header信息
REMOTE_ADDR – 访问客户端的 IP 地址 HTTP_VIA – 如果有该条信息, 就证明您使用了代理服务器,代理服务器的地址就是后面的数值. HTTP_X_FORWARDED_FOR – ...
- 微信小程序基于第三方websocket的服务器端部署
微信小程序后台请求越来越严格 1.request要求用https 2.websocket要求用wss 3.测试后发现websocket只能走433端口 作为.net开发,websocket又是使用的第 ...
- CentOS7快速搭建LNMP环境
名词解释: LNMP:Linux+Nginx+MySql+PHPLAMP:LInux+Apache+MySql+PHPNginx的正确读法应该是Engine X我们使用CentOS自带的YUM来安装 ...
- 优雅的玩PHP多进程
proc_open (PHP 4 >= 4.3.0, PHP 5, PHP 7) proc_open — 执行一个命令,并且打开用来输入/输出的文件指针. 说明¶ resource proc_o ...
- linux编译安装时常见错误解决办法
This article is post on https://coderwall.com/p/ggmpfa 原文链接:http://www.bkjia.com/PHPjc/1008013.html ...
- c#Socket客户端和服务端的信息发送
这是我制作的界面信息,c# Socket通信的简单使用,刚开始学习,不对的地方请大家指教,目前是可以运行的,之后自己在慢慢添加新的东西.同时了解Tcp协议的三次握手.希望对跟我一样的初学者有所帮助. ...
- 深浅拷贝,原生和JQuery方法实现
7-17: 1:e.target.parentNode.remove();成功,查询一下JS原生的remove方法 2:复习JS DOM的原生操作方法,比如innerHTML(),insertBefo ...
- jQuery学习之旅 Item9 动画效果
1.元素的显示和隐藏 display:none; 隐藏 display:block; 显示 简单显示和隐藏方法 a) show() 显示 b) hide() 隐藏 c) toggle() 开关,显示则 ...
- 21.app后端如何高效更新内容
在app的主页或通知栏,经常需要通过api取最新的数据.那么,怎么在这部分上做优化,使获取内容的效率更高呢?在本文中,通过推拉和增量更新,实现了一种高效获取数据的策略. 1.高效更新数据策略在app中 ...
- GitHub 系列之「向GitHub 提交代码」
1.SSH 你拥有了一个 GitHub 账号之后,就可以自由的 clone 或者下载其他项目,也可以创建自己的项目,但是你没法提交代码.仔细想想也知道,肯定不可能随意就能提交代码的,如果随意可以提交代 ...