对于绝大多数 ArcGIS Enterprise 用户而言,在默认端口 80 和 443 上运行 ArcGIS Web Adaptor 即可。 但是,在某些极少数情况下,Web Adaptor 实例无法使用托管它的 web 服务器上的这些默认端口。 例如,托管服务器在这些端口上可能已经运行应用程序,或者端口的访问权限被限制为受保护的组织。
对于无法在端口 80 和 443 上配置门户 Web Adaptor 的情况,您可以允许它在非默认端口上运行。 在执行此操作时,您必须配置反向代理服务器或负载均衡器并将其与您的门户相集成。 由此将允许用户根据需要通过默认端口访问门户。 应继续使用 HTTPS 来加密 ArcGIS Web Adaptor 和 Portal for ArcGIS 之间的通信。
ArcGIS Web Adaptor 配置文件具有 EnableDefaultPortValidation 属性,默认情况下通过门户配置 ArcGIS Web Adaptor 时,将强制使用默认端口 80 和 443。 将此属性的值更改为 false 可忽略该验证,允许 ArcGIS Web Adaptor 在非默认端口上运行。
在非默认端口上配置门户的 ArcGIS Web Adaptor
如果要托管门户 ArcGIS Web Adaptor 的 web 服务器必须在 80 和 443 以外的端口上运行该软件,在通过安装和配置向导设置 Web Adaptor 时需要完成额外的步骤。
- 在将要托管 web adaptor 的 web 服务器上启用 HTTPS。 请注意用于 HTTPS 通信的端口,因为将在门户的初始配置期间使用该端口访问 ArcGIS Web Adaptor。
- 以拥有管理权限的用户身份使用 Setup.exe 安装向导在 web 服务器上安装 ArcGIS Web Adaptor。
- 在托管 ArcGIS Web Adaptor 的计算机中,浏览到 webadaptor.config 文件,并在文本编辑器中将其打开。 默认情况下,该文件位于 C:\Users\<username>\.webadaptor\<web adaptor name> 文件夹中。
- 在 webadaptor.config 文件中,找到属性 EnableDefaultPortValidation,其默认值为 true。 将该值更改为 false:<EnableDefaultPortValidation>false</EnableDefaultPortValidation>。
- 重新启动 web 服务器。
- 使用 URL 格式 https://webadaptorhost.domain.com:<https_port>/webadaptorname/webadaptor/portal 在由 web 服务器使用的 HTTPS 端口上通过 Internet 浏览器打开 ArcGIS Web Adaptor 配置页面。 如果 DNS 别名与门户配合使用,则应使用 https://dnsalias.domain.com:<https_port>/<webadaptorname>/webadaptor/portal 等 URL 通过别名配置 Web Adaptor。
- 对于门户 URL 属性,使用计算机完全限定域名在 URL 中输入托管 Portal for ArcGIS 软件的计算机的 URL,例如 https://portal.domain.com:7443。
- 为具有 Portal for ArcGIS 管理权限的帐户提供一个用户名和密码。 通常,需要使用首次设置门户时定义的初始管理员帐户登录信息。 如果您已降级或删除初始管理员帐户,则需指定具有门户网站管理权限的其他帐户。
- 单击配置。
- 使用组织的反向代理服务器或负载均衡器配置门户,以便用户能够通过默认端口访问门户。 为此,您需要向门户提供一些关于反向代理或负载均衡器的信息。 有关完整说明,请参阅在 Portal for ArcGIS 中使用反向代理服务器。
- 对门户设置反向代理和负载均衡器后,刷新 ArcGIS Web Adaptor 配置页面以进行更新。
该工作流完成后,ArcGIS Web Adaptor 即配置为与 ArcGIS Enterprise 门户配合使用。 用户只能通过反向代理使用 URL 格式 https://reverseproxy.domain.com/webadaptorname/home 服务器访问门户和 ArcGIS Portal Administrator Directory,而不是通过端口 7443 进行访问。
在非默认端口上以静默方式配置门户的 ArcGIS Web Adaptor (Java Platform)
您也可以通过命令行安装和配置 ArcGIS Web Adaptor (Java Platform),但是需要完成一些额外的步骤以在非默认端口上运行。
注:
要执行命令行实用程序,托管 ArcGIS Web Adaptor 的计算机上必须有 Java Runtime Environment (JRE)。 如果计算机上没有 JRE,则执行此实用程序时会出现错误。 有关如何下载并在计算机上安装 JRE 的说明,请参阅 Java SE 下载站点。
- 在将要托管 web adaptor 的 web 服务器上启用 HTTPS。 请注意用于 HTTPS 通信的端口,因为将在门户的初始配置期间使用该端口访问 ArcGIS Web Adaptor。
- 以拥有管理权限的用户身份使用安装命令行实用程序在 web 服务器上安装 ArcGIS Web Adaptor。
- 在托管 ArcGIS Web Adaptor 的计算机中,浏览到 webadaptor.config 文件,并在文本编辑器中将其打开。 默认情况下,该文件位于 C:\Users\<username>\.webadaptor\<web adaptor name> 文件夹中。
- 在 webadaptor.config 文件中,找到属性 EnableDefaultPortValidation,其默认值为 true。 将该值更改为 false:<EnableDefaultPortValidation>false</EnableDefaultPortValidation>。
- 重新启动 web 服务器。
- 使用命令行实用程序 ConfigureWebAdaptor.bat 配置 ArcGIS Web Adaptor,该实用程序位于 <ArcGIS Web Adaptor installation directory>\Web Adaptor<version>\java\tools 文件夹中。 您将使用语法 ConfigureWebAdaptor.bat -m <Mode> -w <WebAdaptorURL> -g <Machine Name|URL> -u <Username> -p <Password>。 提供的参数如下:
- <Mode> - 配置 ArcGIS Web Adaptor 时使用的产品模式。 将此参数设置为 portal 以便与 Portal for ArcGIS 配合使用。
- <WebAdaptorURL> - 您希望从命令行配置的 ArcGIS Web Adaptor 的 URL。 此 URL 与在 Web 浏览器中访问配置页面使用的 URL 相同。 您需要指定 ArcGIS Web Adaptor 的 HTTPS URL,例如,https://webadaptorhost.domain.com:<https_port>/webadaptorname/webadaptor。 如果 DNS 别名与门户配合使用,则应使用 https://<dnsalias.domain.com>:<https_port>/<webadaptorname>/webadaptor 等 URL 通过 DNS 别名配置 Web Adaptor。
- <URL> - 托管 Portal for ArcGIS 的计算机 URL。 在 URL 中加入计算机的全限定域名称,例如 https://portal.domain.com:7443。
- <Username> - 具有 Portal for ArcGIS 管理权限的帐户的用户名。 通常,需要使用首次设置门户时定义的初始管理员帐户。
- <Password> - 具有 Portal for ArcGIS 管理权限的帐户的密码。 通常,需要使用首次设置门户时定义的初始管理员帐户。
示例命令
ConfigureWebAdaptor.bat -m portal -w https://webadaptorhost.domain.com:https_port/webadaptorname/webadaptor -g portal.domain.com -u initialadmin -p secret123
- 使用组织的反向代理服务器或负载均衡器配置门户,以便用户能够通过默认端口访问门户。 为此,您需要向门户提供一些关于反向代理或负载均衡器的信息。 有关完整说明,请参阅在 Portal for ArcGIS 中使用反向代理服务器。
该工作流完成后,ArcGIS Web Adaptor 即配置为与 ArcGIS Enterprise 门户配合使用。 用户只能通过反向代理使用 URL 格式 https://reverseproxy.domain.com/webadaptorname/home 服务器访问门户和 ArcGIS Portal Administrator Directory,而不是通过端口 7443 进行访问。