Quantcast
Channel: ArcGIS Blog » Troubleshooting
Viewing all articles
Browse latest Browse all 8

Why don't some of the links work in my ArcGIS Services Directory?

$
0
0

“I’ve exposed my ArcGIS Server to the world and it works well for the most part. However, certain links in the Services Directory still point to internal URLs.”

We have seen many users face this issue and this blog post is an attempt to address it. There are a couple of updates you need to make to configure the Services Directory for external use:

  1. Update the REST configuration files with an external SOAP URL and REST API reference
  2. Update your server directories to use external URLs for their virtual directories

Update the REST configuration files with an external SOAP URL and REST API reference

In order to set up the Services Directory for access to external users, you need to modify the SOAP URL specified in REST configuration file to be an external URL. The SOAP URL is used to generate various links in the Services Directory, most notably “View in ArcMap”, “View in ArcGIS Explorer”, and some of the Supported Interfaces links.

Additionally, the URLs for the Services Directory Help and REST API reference need to be updated to be accessible by external users.

Platform-specific instructions are included below to help you.

Updating the REST configuration file (.NET)

If you’re using ArcGIS Server for the Microsoft .NET Framework, do this:

  1. Open the rest.config file in a text editor. This file is commonly located at c:inetpubwwwrootArcGISRestrest.config, but the location will vary depending on your ArcGIS Server instance name and the root directory for your Web server.
  2. Find the <SoapUrl> element and change the enclosed URL to use an externally accessible address. Example: <SoapUrl>http://externalServer.myDomain.com/ArcGIS/services</SoapUrl>
  3. Find the <SoapSslUrl> element and change the enclosed URL to use an externally accessible address. Example: <SoapSslUrl>https://externalServer.myDomain.com/ArcGIS/services</SoapSslUrl>
  4. Find the ApiHelp tag and change the baseUrl property to reference an externally accessible address. Example: <ApiHelp baseUrl=”http://externalServer.mydomain.com/ArcGIS/SDK/REST/index.html?”>
  5. Find the <ServicesDirectoryHelp> element and change the enclosed URL to use an externally accessible address: <ServicesDirectoryHelpUrl>http://externalServer.mydomain.com/ArcGIS/SDK/REST/servicesdirectory.html</ServicesDirectoryHelpUrl>
  6. Save and close the file.
  7. Restart IIS.

Note: Prior to 10.0, for ArcGIS Server for the Microsoft .NET Framework, running the Web Applications post install would overwrite the user edited settings in rest.config for SOAP and REST API reference URLs. At 10.0, the user settings are persisted when the post installs are re-run.

Updating the REST configuration files (Java)

If you’re using ArcGIS Server for the Java Platform, we recommend exporting the REST handler using ArcGIS Server Manager. One of the required inputs when exporting the REST handler is the SOAP URL. Specify an externally accessible SOAP URL for this input, and deploy the WAR file generated to a servlet engine of your choice.

Alternately if you prefer to edit the configuration files of an already deployed REST service, do this:

  1. In a text editor, open the server.properties file, which is stored in the REST war file in the path WEB-INFclassesserver.properties
  2. Update the com.esri.rest.SOAP_URL property with an externally accessible address. Example: com.esri.rest.SOAP_URL=http://externalserver.mydomain.com/arcgis/services
  3. Update the com.esri.rest.SOAP_HTTPS_URL property with an externally accessible address. Example: com.esri.rest.SOAP_HTTPS_URL=https://externalserver.mydomain.com/arcgis/services
  4. Save and close the file.
  5. In a text editor, open the rest-config.properties file, which is stored in the REST war file in the path WEB-INFclassesresources rest-config.properties.
  6. Update the base.url property with an externally accessible address. Example: base.url=http://externalserver.mydomain.com:port/arcgis/sdk/rest
  7. Save and close the file.
  8. Restart the application server.

Update your server directories to use external URLs for their virtual directories

The virtual directories associated with the ArcGIS Server output, jobs, and cache directories must use a URL that is accessible externally. You can either edit the virtual directory of an existing server directory or create new server directories with an external URL for the virtual directory. Once the virtual directories are set up, ensure that all your services are configured to use them.

About server directories

Contributed by Ravi Narayanan of the ArcGIS Server development team


Viewing all articles
Browse latest Browse all 8

Latest Images

Trending Articles





Latest Images