I have an AEM 6.3 site which uses ACS AEM Commons 3.15.12 sitemap functionality, it's configured on publish instances to use the 'publish' externalizer domain. The rendered sitemap has the correct hostname in the sitemap URLs.
When I add an additional homepage component (for the new site) in the same sitemap config as the existing working one, keeping publish as the externalizer domain, the new site's sitemap doesn't have the new site's domain name in the generated URLs, instead it has http://localhost:4503.
The working site (sitemap) does have some /etc/map/http mappings, which I recreated in kind for the new site, but again, when using the same config (with a home page component for each site), http://localhost:4503 remained as the domain name for my new site in its ACS AEM Commons generated sitemap.xml.
I did not try creating a new config with the new site (and its home page component), using publish as the externalizer domain, and with the new mappings I created.
I did however create a new config, with the new site's homepage component, and using a custom externalizer domain, which I created to match my new site's correct domain name, and did not have any /etc/map/http maps for the new site. In this case, the generated sitemap had the correct domain name in its sitemap.xml.
I'm trying to understand what's going on. Why the different behavior in the domain names printed in the generated sitemap.xml files for each site? Also, why does ACS AEM Commons want a home page component when a path could indicate the root of a site? It makes me wonder if my new site's home page component is missing something, so as not to work (i.e. causing the ACS AEM Commons sitemap to show http://localhost:4503 instead of the site's domain name), or maybe it's mapping related, or something else?
Seeking clarity (09/08/21):
The first site in my AEM to use ACS Commons Sitemap is using "publish" (which maps to http://localhost:4503) as the externalizer domain. How is the generated sitemap for this site getting the correct domain in this case? The only other info in the ACS Commons Site Map config for this site is the sling resource type for this site's homepage component.
Additionally, there are several /etc/map/http/<xxx_site:80> entries for this site, including one for sitemap (a redirect to home.sitemap.xml). I have a feeling these entries are how the sitemap has the correct domain while only having "publish" as the externalizer domain? The protocol shows as http however, could this be changed to https by creating similar /etc/map/https entries?
Instead of creating: publish1 https://www.yourfirstdomain.com, publish2 https://www.yourseconddomain.com for additional sites as suggested (and this does seem to work), could I use the same "publish" externalizer domain, in a new/separate ACS Site Map config, as the first site does, in conjunction with similar /etc/map/http(s) entries for the additional sites/domains?
Default configuration in externalizer for "publish" domain is "http://localhost:4503".
For your new/existing domain you should first configure Day CQ Link Externalizer: use publish1, publish2...and so on
publish1 https://www.yourfirstdomain.com, publish2 https://www.yourseconddomain.com
After this, you can enter the respective domain (publish1, publish2,..) in ACS AEM Commons - site map servlet as externalizer domain