LantharDalton

The server is not ready for publishing - new fix

Discussion created by LantharDalton on Mar 3, 2017

So you are trying to publish from ArcMap to ArcGIS Server, and you are getting "The server is not ready for publishing.  Please check if the Publishing Tools on the server (System/PublishingTools) are started."

 

You've checked the server in ArcGIS Server /arcgis/manager => services/system and the publishing tools are not secured, and the system folder is not secured.  (if not, try that too, some people say marking it secured and then unsecuring it again can clear out some resident issues).

Maybe you also checked your ssl settings, went into IIS and exported your certificate with a password, went back into https://server:6443/arcgis/admin/machines/servername, sslcertificates, and imported the saved cert, then backed out and put the common name in under the servername settings?  Go do that too, if your webadaptor resides on the same server as arcgis server.  If you don't, ssl errors may stop the publishing behind the scenes.

But publishing as a windows active directory account still won't publish.  You tried publishing through the primary server account and that doesn't work... unless you specify the port and avoid using the web adaptor?

Then this may be your issue.

On the server with the webadaptor on IIS, try to browse to https://yourserver/arcgis/admin/machines/ and click yourservername.domain.com.  Did you get a URLSCAN rejection?

 

urlscan error

 

For me, this wound up being due to two settings in URLSCAN.INI which prevents IIS from using folders with dots in the folder name, and from having URLs that end with .com.  Some of the javascript subfolders used by the webadaptor for IIS have dots, and that machines/servername.domain.com has .com on the end.  To resolve, you must:

  1. Go to Windows\system32\inetsrv\urlscan\urlscan.ini
  2. Set AllowDotInPath=1, then save the file.
  3. Find the section for [DenyExtensions] where it says ; Deny executables that could run on the server.  Put a semicolon in front of the line that says .com.
  4. In CMD prompt, type IISRESET

Now you should be able to publish through your webadaptor using windows active directory accounts that are part of an authorized domain group with "publisher" role assigned in the server/manager roles page.

 

Hope this helps someone!

Outcomes