Exposing your services to external users
Before you expose your ArcGIS Server on the Internet, there are a few configuration tasks you need to perform. Some of the links in the Services Directory point to internal URLs by default, and will appear broken to Internet users unless you apply the changes outlined below. Additionally, ArcMap users trying to access your services through ArcGIS.com may not be able to view them unless you apply the described changes.
To make your GIS services available for external users, you need to:
- Update the REST configuration file with an external SOAP URL and REST API reference
- Update your server directories to use external URLs for their virtual directories
Update the REST configuration file 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 the REST configuration file to be an external URL. The SOAP URL is used to generate various links in the Services Directory, such as “View in ArcMap”, “View in ArcGIS Explorer”, and other Supported Interfaces links. Modifying the SOAP URL will also allow external ArcGIS Desktop and ArcGIS Explorer users access to your services through the “Open in ArcGIS Desktop” command on ArcGIS.com.
Additionally, the URLs for the Services Directory Help and REST API reference need to be updated to be accessible by external users.
Updating the REST configuration file
- Open the rest.config file in a text editor. This file is commonly located at c:\inetpub\wwwroot\ArcGIS\Rest\rest.config, but the location will vary depending on your ArcGIS Server instance name and the root directory for your Web server.
- Find the <SoapUrl> element and change the enclosed URL to use an externally accessible address. Example: <SoapUrl>http://externalServer.myDomain.com/ArcGIS/services</SoapUrl>
- Find the <SoapSslUrl> element and change the enclosed URL to use an externally accessible address. Example: <SoapSslUrl>https://externalServer.myDomain.com/ArcGIS/services</SoapSslUrl>
- 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?">
- 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>
- Save and close the file.
- Restart IIS.
- Restart the ArcGIS Server Object Manager (SOM) service
Prior to 10.0, running the Web Applications post install for the Microsoft .NET Framework would overwrite the user edited settings in the rest.config for SOAP and REST API reference URLs. At 10.0, the user settings are persisted when the post installs are re-run.
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.