Resulting URL after registering web adaptor is server CNAME and not public-facing website domain

1083
6
03-15-2022 06:40 AM
MKF62
by
Occasional Contributor III

I have a single website in IIS on our server machine. I understand that when registering the web adaptor, it automatically chooses that website since it's the only one available. When I register the web adaptor though, I wind up with a resulting rest service URL using the CNAME of the server instead of the public-facing web domain like I would expect. For instance, these are my results:

Untitled.png

 

Instead of the https://CNAME/webadaptorname/rest/services URL, I was expecting https://www.mywebsite.com/webadaptorname/rest/services

 

At the end of the day, it doesn't really matter as it registers successfully and I can still reach the rest service by replacing the CNAME in the URL with the public-facing website domain, but in a past set up, I have seen that resulting URL being a public-facing website and not the server name. How would you generate the URL that way? Or would it only generate that way if you had more than one website in IIS and you had to specifically choose which to register the web adaptor with?

Tags (2)
0 Kudos
6 Replies
Oiligriv
Occasional Contributor

where are you registering the Web Adapter? on the Portal or on ArcGIS Server?

0 Kudos
MKF62
by
Occasional Contributor III

AGS.

Since we only host one site on the web server, we have left the bindings otherwise blank in IIS. I wonder if that's where the URL is pulled from during the registration of the web adaptor. Since nothing is there, maybe it just defaults to the server name. 

Untitled.png

0 Kudos
TonyContreras_Frisco_TX
Occasional Contributor III

I misunderstood the issue and have since edited the reply. I think the answer is to unregister the web adaptor and try again using this URL to register the WA while logged in to the web adaptor server:

https://www.mywebsite.com/webadaptorname/webadaptor

0 Kudos
MKF62
by
Occasional Contributor III

I tried that the other day and it doesn’t work. It says that the web adaptor config URL has to be accessed from the machine hosting the web adaptor. I’m logged into the server machine when I do this, so the message is non-sensical to me.

0 Kudos
ThienTran
Esri Contributor

Is mywebsite.com the domain of your proxy/load balancer? 

A way to circumvent the error you are receiving is to temporarily add a hosts file entry that maps mywebsite.com to your webadaptor machine's localhost IP. Then make sure you use https://www.mywebsite.com/webadaptorname/webadaptor to configure the webadaptor. The hosts file entry can be removed after initial configuration of the web adaptor. Although, this wouldn't be the supported or recommended way to configure this. Recommendation from online documentation is to have your proxy forward requests directly to your ArcGIS Server or via Web Adaptor. See below for more information:

0 Kudos
Scott_Tansley
MVP Regular Contributor

I don't think you've really got an issue here.  Let's say you have a machine that is called:

If you use a default install of IIS then IIS will respond on:

All of them are 'valid' but not what we may actually want.  So in our internal DNS we may create an entry called gis.internal.domain.com if this references the IP of iismachine then you can add the following as a valid name, appended to the above list of three bullet points:

If you want to expose this externally then you'd need to create external DNS entries as well as all the firewall/NAT rules etc.  This entry may be called gis.domain.com, which would mean the above website would additionally be available on:

However, this would not be available internally unless you have split DNS allowing you to reference it.

Typically, my clients have split domains and so the only address we ever want to use is the:

address.  This gives us a nice clean presence.  However, internally the other addresses will still work unless you additionally configured the Host Name property in the web site bindings.

Typically when I configure the web adaptor, I am (have to be) logged on to the IIS server.  When I go to configure the web adaptor, I will open the browser and enter the full name of the website that I want to use into the URL bar.  After the installer has worked and the config page opens (localhost), use the external name instead.  Don't use localhost or the following: 

into the browser to perform the configuration I use the intended name of the website in the browsers URL Bar:

 

Note if the Web Server is not on the AD it may not have access to DNS, and so you may have to update the hosts file for the above to work.

When you do use the above URL in the URL bar, the response from the web adaptor configuration will come back as:

If it doesn't, then someone's been playing with your OS/AD/DNS.  The above 'should' work no matter what, and from here on in, that should be the only address you use.

Note that in the past for a standalone ArcGIS Server, I've actually had multiple CNAMEs working against that IIS site.  I would not recommend attempting that for a federated ArcGIS Enterprise build, and to be honest I'd just standardise on one name in any circumstances in this day and age anyway.

Hope you sort it.  My feeling is the weirdness you're seeing is not ArcGIS related by OS/IIS related instead.

Scott Tansley
Consulting Architect (ArcGIS Enterprise)
https://www.linkedin.com/in/scotttansley/