如果您具有有限的服务器访问权限(例如,在云环境或安全环境下),则可以创建一个能够与服务器管理员共享的服务定义文件,以便以后发布。服务定义文件被封装为一个便携文件,其中包含了服务属性、功能和服务类型等相关信息。另外,您可对服务定义文件进行配置以包含 GIS 资源所引用的数据。
例如,假设您是一位 GIS 分析师,管理着一个由几十个编辑人员不断进行修改的地理数据库。而且,每个月都需要对此数据执行质量保证检查流程,以保证其达到您所在组织的数据完整性标准。在对数据执行了质量检查之后,您可以使用服务定义文件来捕捉已经过验证的地理数据库,并将其传送给服务器管理员,以便发布到 ArcGIS Server 站点。
注:
请注意,服务定义文件根据在创建时是连接到 ArcGIS Server 站点还是连接到门户组织而不同。在创建服务定义文件时,如果您连接到的是 ArcGIS Server 站点或选择包括 GIS 资源引用的数据,则只能在 ArcGIS Server 站点中使用文件,无法将其发布到 ArcGIS Enterprise 门户或 ArcGIS Online。同样,在创建服务定义文件时,如果选择的是连接到组织,则无法将服务定义文件发布至 ArcGIS Server 站点。
创建服务定义文件
使用 ArcMap 创建服务定义文件。您可以使用任何类型的 GIS 资源创建服务定义文件:地理数据库、地址定位器、地图文档、地理处理模型等。在创建服务定义文件之前,请考虑以下情况:
已经配置服务器连接
如果您或服务器管理员已经配置了一个服务器连接以便在发布到 ArcGIS Server 时使用,则您可在创建服务定义文件时直接选择此连接。选择此选项将会创建一个服务定义文件,服务器管理员可以立即将其发布到 ArcGIS Server 站点。
如果在创建服务定义文件时指定服务器连接,则需要确定是否希望此文件包含 GIS 资源所引用的数据。
- 如果不希望服务定义文件包含 GIS 资源所引用的数据,则需要在创建该文件之前将数据注册到服务器。数据注册可为服务器提供数据位置的相关信息,而且在多台机器上发布时,还有助于服务器了解如何调整数据路径。在发布时,服务将继续引用 GIS 资源中包含的原始数据。不会在服务器上保存另外副本。
- 如果希望服务定义包含 GIS 资源引用的数据,则请勿将数据注册到服务器。GIS 资源引用的所有数据都将封装到服务定义文件中。在发布时,会将服务及其关联的数据上传到服务器中。请注意,如果在发布时,服务器已设置为不允许数据复制,则无法发布包含数据的服务定义。
已经断开服务器连接或访问受限
如果当前已经断开服务器连接或无法访问服务器连接,则可将服务定义文件配置为没有与 ArcGIS Server 的可用连接。选择此选项会创建一个在发布时必须配置为使用服务器连接的服务定义文件。
如果在创建服务定义文件时未指定服务器连接,则需要确定是否希望此文件包含 GIS 资源引用的数据。
- 如果不希望服务定义文件包含 GIS 资源所引用的数据,请确保在创建此文件时取消选中发布时包括服务定义中的数据选项。数据需要位于您最终发布到的 ArcGIS Server 站点可以访问的位置。不必将数据位置注册到服务器上。在发布时,服务将继续引用 GIS 资源中包含的原始数据。不会在服务器上保存另外副本。
- 如果希望服务定义包含 GIS 资源所引用的数据,则在创建此文件时请选择发布时包括服务定义中的数据。启用此选项会复制 GIS 资源引用的所有数据,并将其封装到服务定义文件中。在发布时,会将服务及其关联的数据上传到服务器中。请注意,如果在发布时,服务器已设置为不允许数据复制,则无法发布包含数据的服务定义。
有关完整说明,请参阅在 ArcMap 中创建服务定义。
发布服务定义文件
可使用 ArcMap 或 ArcGIS Server Manager 将服务定义文件发布到 ArcGIS Server。有关完整的说明,请参阅以下主题:
更改默认过渡位置
默认情况下,ArcMap 将服务定义文件存储到磁盘上的一个本地文件夹中。如果要更改默认过渡位置,请参阅在 ArcMap 中更改默认过渡文件夹主题。