Managing Domains
Adding a Domain
To add a domain, click the New
button. Enter the domain name, a note (optional), and then click the Save
button. Adding a domain to a site simply lets the Ring know that this domain is associated with the site. It does not change any hosting configuration on the underlying web server.
The domain manager is able to operate on domains as entered and their www
subdomains. In almost all cases, a site's domain and its www
subdomain are both configured for hosting or redirection. Due to this, they are combined under a single domain for ease of use (instead of always having to add a domain and it's corresponding www
subdomain as separate domains). If you would like to host a subdomain other than www
, add it as a new domain. For example, if the domain is sainttest.com
and you want to host a school
subdomain, add school.sainttest.com
as a new domain.
The newly added domain is assumed to be under the control of the client or their third-party. If Solutio needs to register, transfer, or run the DNS servers for the domain, please contact Andy (via the Domain Hopper Google Sheet). A future release of the domain manager will add the ability to register/transfer domains and manage DNS.
Hosting a Domain
You can have the server accept a domain by clicking the Host Apex
or Host WWW
button. Host Apex will instruct the server to accept the apex domain (sainttest.com
), while Host Apex will instruct it to accept the www subdomain (www.sainttest.com
).
When hosting is requested, the Ring creates a background job that instructs the server to use the new hosting configuration. This job only takes a few seconds to run and its status will be displayed next to the Status label. A Status of ok implies all pending jobs have completed successfully.
Apex or WWW?
When the client controls the domain, www
needs to be used to host the site. This is because an apex domain doesn't support CNAME records correctly due to a limitation of how DNS works. We never give the client an A record (IP address) to host the site at, because if the underlying server for the site needs to change, we would have to contact each and every client whose site is hosted on the server and have them make a DNS change. It's difficult enough to get a client to update their DNS when the site launches - we want to ensure the records can remain stable while they are with us.
The obvious exception to giving the client an A record is to have their apex domain redirect to the www
subdomain. The redirect server has a flexible IP that can be pointed to a different server in case of an outage. In addition, redirection is light on resources and a single server (therefore single IP to give out) can handle all of our client sites.
When Solutio controls the domain, how the site is hosted can be a preference of the client. We usually just host the domain at the apex to avoid the extra characters. Our DNS servers have a special record type, ANAME
, that translates CNAMEs to IP addresses automatically and works at the apex. Other services call this CNAME flattening.
Launching a Domain
When Solutio controls the DNS for a domain that has yet to be launched, a status of ok (pending launch)
will appear. When the domain is pending launch, a launch button will appear in the toolbar if a domain is setup as follows:
- The domain in question is a second-level domain. (e.g.,
myparish.com
, notsubdomain.myparish.com
) - And, the domain is either configured to host the apex or redirect the apex (one or the other)
- And, the domain is either configured to host the www subdomain or redirect the www subdomain (one or the other)
Andy sets the
pending launch
flag on a domain when Solutio takes over the DNS for the domain, which is normally well ahead of launch.
Clicking the launch button will cause the ring to initiate a background job that changes the DNS records on the domain to point to the appropriate Solutio servers. When the job has finished, the site will be launched (it may take a while for you to see the new records due to DNS propagation). After propagation, you can continue one with enabling HTTPS.
Enabling HTTPS
Before you can enable HTTPS, the domain must be hosted. HTTPS requires a certificate issued by an external authority and hosting the domain is how we prove that we have access to the domain (and therefore the permission to acquire a certificate).
To enable HTTPS, simply click the HTTPS
button. The Ring first checks to see if we have a valid certificate, and if not, creates a series of jobs to acquire one. After a valid certificate is acquired, a jobs instructs the sever to use an updated hosting configuration and use the certificate.
These jobs can fail (for example, if you try to enable HTTPS and the client hasn't updated their DNS records to point to the new site). If this happens, you can clear any failed jobs by clicking the
Purge Jobs
button in the toolbar (only appears when there are failed jobs).
Forcing HTTPS
You can force HTTPS on a site by clicking the Force HTTPS
button. The Ring will instruct the server to change the hosting configuration so that any visitors of a plain HTTP URL are redirects to an HTTPS equivalent.
Primary Domain
The primary domain status is informational only and does not affect any hosting or redirects of the domain. The first domain added to the site will automatically be marked as primary. To select another primary domain, click the the Make Primary
button in the toolbar.
Edit Domain Notes
Notes for the domain can be edited by clicking the Edit Notes
button in the toolbar.
Removing a Domain
A domain can be removed from the site, but it must first meet the following criteria:
- Hosting and HTTPS are disabled
- No pending or failed jobs related to the domain
- No redirects attached to the domain
- The domain must not be the primary domain, unless it's the only domain remaining
- The domain must not be registered at Solutio's registrar or using Solutio's nameservers (i.e., domain must be controlled by the client)
When the above criteria is met, the domain can be deleted by clicking the Delete
button in the toolbar.