前不久,一客户反映原来已经部署好的WebGIS系统忽然无法正常运行了,具体配置如下:

Portal for ArcGIS 10.5

ArcGIS Server 10.5

Web Adpator 10.5

Data Store 10.5

表现出现的症状就是托管的要素服务可以正常发布,但是三维服务SceneService发布不成功。查看ArcGIS Server的日志,提示如下错误信息:

Client tried to acces password protected page without proper authorization (status code 401) 这个错误其实是ArcGIS Server底层的ArcObject类库中预定义的错误消息 MESSAGESUPPORT_E_UNAUTHORIZED,可以参考以下链接:

https://desktop.arcgis.com/en/arcobjects/latest/net/webframe.htm#messageSupportError.htm

初步判断这个错误有可能是DataStore无法认证登录的问题,但通过了Server的REST管理页面验证了一下DataStore,发现状态是正常的。

Server用于验证DataStore的REST URL路径类似如下:

https://www.seanpc.com/ags/admin/data/items/nosqlDatabases/AGSDataStore_nosqldb_tcs_m3p2m8vg/machines/LUWLESRIPC.MSHOME.NET/validate

返回的结果类似如下:

再次推测问题可能和操作系统的文件系统权限有关,询问了一下客户,原来客户在系统出问题之前做了一个重置ArcGIS Server运行账户密码的操作。客户是直接通过Windows的管理页面做账户密码重置操作的。

于是重新设置了ArcGIS Server安装目录以及系统数据目录的权限。

使用C:\Program Files\ArcGIS\Server\bin\ServerConfigurationUtilityUI.exe工具重新设置ArcGIS Server账号信息和目录权限。

重置后,重启ArcGIS Server,再次发布三维服务SceneService,系统恢复正常了。建议客户如果在知道原账户密码的前提下需要重置密码,必须通过Windows的控制面板账户管理来重置密码。假如是通过Windows的管理页面做账户密码重置操作的,需要重新设置相关的ArcGIS Server文件目录账户权限。因为按照微软的说法:

If an administrator resets your password, you might lose access to some of your files.

Client tried to access password protected page without proper authorization (status code 401) 无法发布SceneService的解决方法的更多相关文章

  1. 执行PHP脚本时遇到 mysql_connect(): Headers and client library minor version mismatch的解决方法

    把服务器从Windows迁移到了centos7.2,配置好PHP运行环境后,项目运行正常. 但在命令行中运行一个PHP脚本时,遇到了标题中显示的错误 使用 php -i | grep Client 得 ...

  2. 实操:Could not autowire No beans of 'FastDFS Client' type found 的解决方法

    前言: 今天接手了同事之前做的一个小项目,里面涉及到了 FastDFS 的使用.但是当我在本地运行项目的时候,却报了 Could not autowire No beans of 'FastDFS C ...

  3. [转]Blue Prism Opening a password protected Excel workbook?

    本文转自:https://www.rpaforum.net/threads/opening-a-password-protected-excel-workbook.470/ 问: As the tit ...

  4. redis集群报Jedis does not support password protected Redis Cluster configurations异常解决办法

    解决spring-data-redis操作redis集群报“Jedis does not support password protected Redis Cluster configurations ...

  5. MySQL------报错Access denied for user 'root'@'localhost' (using password:NO)解决方法

    报错:Access denied for user 'root'@'localhost' (using password:NO) 原因:没有给用户“root'@'localhost”赋予数据库权限 解 ...

  6. Access denied for user 'root'@'localhost' (using password:YES)解决方法

    Access denied for user 'root'@'localhost' (using password:YES)解决方法 在MySQL的使用过程中,我们可能会碰到“Access denie ...

  7. mysql Access denied for user root@localhost错误解决方法总结(转)

    mysql Access denied for user root@localhost错误解决方法总结(转) mysql Access denied for user \'root\'@\'local ...

  8. mysql Access denied for user root@localhost错误解决方法总结

    原文:http://www.111cn.net/database/mysql/44142.htm Access denied for user 'root'@'localhost' (using pa ...

  9. MySQL Access denied for user root@localhost 解决方法

    今天把本地开发的项目(ThinkPHP 3.2.3)移到虚拟机上(CentOS 6.6,LNMP 1.2,MySQL 5.6.23),配置好 MySQL 之后访问首页,出现: 此时 MySQL 的用户 ...

随机推荐

  1. P1091 合唱队列

    合唱队列 原题:传送门 核心代码: /* 方法求出每一个点的最长升子序列和最长降子序列,再加到该点上 通过循环比较哪个点最大,再用总长减去该点长度即是答案 */ #include<iostrea ...

  2. netty用户指南

    Netty用户指南 一.前言 1.问题 当今世界我们需要使用通用的软件或库与其他组件进行通信,例如使用HTTP客户端从服务器中获取信息,或通过网络服务调用一个远程的方法.然而通用的协议及其实现通常不具 ...

  3. Homebrew下安装的软件自启动服务管理工具:Launchrocket

    帮助管理Homebrew安装的服务的软件,比如使用Homebrew安装的Mysql.Redis.MongoDB,传统方式需要使用命令行的命令,而使用LaunchRocket则可以在图形界面中进行管理. ...

  4. 使用grunt搭建自动化的web前端开发环境

    使用grunt搭建自动化的web前端开发环境 我们一定经常听过grunt和gulp,它们都是用于搭建自动化的web前端开发环境的,这里主要介绍grunt的使用,值得一提的是,jQuery.bootst ...

  5. Linux系统编程:文件I/O编程

    文件I/O操作在Linux编程时是经常会使用到的一个内容,通常可以把比较大的数据写到一个文件中来进行存储或者与其他进程进行数据传输,这样比写到一个全局数组或指针参数来实现还要方便好多. 一.文件常用操 ...

  6. java动态加载机制

    假设有一个class,ClassLoader首先把它load到内存里的code segment(内存里存放代码段的),站在ClassLoader的角度,内存里的一个一个的class就是一个一个的对象, ...

  7. 《Algorithms算法》笔记:元素排序(3)——洗牌算法

    <Algorithms算法>笔记:元素排序(3)——洗牌算法 Algorithms算法笔记元素排序3洗牌算法 洗牌算法 排序洗牌 Knuth洗牌 Knuth洗牌代码 洗牌算法 洗牌的思想很 ...

  8. Cloudera Manager安装之Cloudera Manager 5.3.X安装(三)(tar方式、rpm方式和yum方式)

    不多说,直接上干货! 福利每天都有  =>  =>=>=>=> 欢迎大家,关注微信扫码并加入我的4个微信公众号:   大数据躺过的坑      Java从入门到架构师  ...

  9. rspec 笔记

    rspec的expect方法接收任何对象作为参数,并且返回一个rspec代理对象 叫做 ExpectationTarget. ExpectationTarget存储了传递给expect方法的对象,他响 ...

  10. try catch finall 结构里的 return

    public class ExceptionDemo1 { public static void main(String[] args) { try { ; /b; System.out.printl ...