-
关于如何在默认网站(Default Web Site,物理地址C:\inetpub\wwwroot\)启动,已有很多博客详尽地写好了。
-
本篇在自建网站(本机)中配置http而非https的jsAPI,jsAPI版本为4.15。
-
如何打开IIS、如何创建网站请移步IIS教程,比较简单,博客也很多,不再赘述。
1.在D盘添加一个文件夹(jsapi_lib),验证iis访问可以访问(熟悉的可以不用这步)
在文件夹中写一个index的html文件(内容随意,用来测试)
2.找到iis管理器,先后建立应用程序池,和网站
之后用这个程序池建立网站
之后预览网页,看看是否显示你写的内容,如果显示就代表iis没有问题,可以进行下一步部署arcgis了
这是我设置的默认网页(代表成功,接下来讲api部署到这个路径下)
3.部署arcgis api (4.15版本为例,其他版本也类似)
将下载的api文件也放到刚才建立的路径下,然后,寻找此文件夹下的init.js和dojo.js,修改其中一段[HOSTNAME_AND_PATH_TO_JSAPI]字符串
将其改为“http://localhost/arcgis_js_v415_api/arcgis_js_api/library/4.15/dojo”(init.js和dojo.js都要改)
其中二者的物理地址(也就是对于我这台电脑的磁盘位置来说)
- init.js: D:\jsapi_lib\arcgis_js_v415_api\arcgis_js_api\library\4.15\init.js
- dojo.js: D:\jsapi_lib\arcgis_js_v415_api\arcgis_js_api\library\4.15\dojo\dojo.js
所以在超文本传输协议(http)下的网络地址为
- init.js:https://localhost/arcgis_js_v415_api/arcgis_js_api/library/4.15/init.js
- dojo.js:https://localhost/arcgis_js_v415_api/arcgis_js_api/library/4.15/dojo/dojo.js
因为本机未开启https,所以init.js和dojo.js真正能被用的网络地址为:
- init.js:http://localhost/arcgis_js_v415_api/arcgis_js_api/library/4.15/init.js
- dojo.js:http://localhost/arcgis_js_v415_api/arcgis_js_api/library/4.15/dojo/dojo.js
不难得出,实际上,http://localhost即等价于 D:\jsapi_lib。
最后的路径改为:http://localhost/arcgis_js_v415_api/arcgis_js_api/library/4.15/dojo
4.浏览器测试是否成功(出现这样了代表ok,保险起见,再在沙盒里更改地址测试下)
沙盒中测试ok--宣布本地部署ok,但是有一个问题,就是小图标都无法正常显示了
小图标都无法正常显示
5.在IIS中添加HTTP响应标头解决图标问题
在iis中找到HTTP响应标头
双击打开依次添加如下4个名称/值
Access-Control-Allow-Credentials:true
Access-Control-Allow-Headers:origin,x-requested-with,content-type
Access-Control-Allow-Methods:POST,GET,OPTIONS
Access-Control-Allow-Origin:*
最后重新启动IIS,清理浏览器缓存,重新打开页面就可以看到图标正常显示了(至此本地部署问题解决)。