New customers wishing to use their own domain name for the SaaS learning site need to map our production IP Address to the new domain name they wish to use. This assumes that the customer (or someone on their behalf) is in charge of the parent domain name. This is shown by the example below (it takes into account the SubdomainFu.tld_sizes for production⇒1):
domain name” under “Website Address” while creating new site from our SaaS main site)
services) depending on whether the customer will provide access to the internal and/or external users/clients. Instead of that to conserve IPv4 addresses and automate the process, CNAME records approach can be used. Since the tld_size for production is set to 1, the above format of domain name will be supported: sub-domain-size = 1 (mydomain), sitename(learning).
At a high level, below needs to happen:
Create new domain alias for the customer “customer<xxxx>.learnexa.com” in /etc/hosts in the prodapp01.
To be verified -- *.learnexa.com at this point should be pointing to prodapp01.
Request customer to create a cname entry in their external or internal DNS to point to this domain alias provided by us.
For e.g. customer should create an entry in his DNS server as follows -
Hostname - customer.domain.com
TTL – 86400
Type – in CNAME
Target - customer<xxxx>.learnexa.com
Create new web server instance
Create new site in Crossbow, provide customer with CNAME
cd /opt/apache2/sites cp -r TEMPLATE xxyyzz (where xxyyzz can be a new short name to match the new external domain name, for eg myoga for methodyoga.com) cd xxyyzz/conf (EDIT httpd.conf, replace TEMPL_IPADDRESS with the new INTERNAL IP Address, replace TEMPLATE with xxyyzz, replace BYOD.COM with actual new domain name) cd ../bin (EDIT apachectl, replace TEMPLATE with xxyyzz)
Start Apache:
/opt/apache2/bin/httpd -f /opt/apache2/sites/xxyyzz/conf/httpd.conf Add the above in /etc/rc.local
Alternatively, can use: /opt/apache2/sites/xxyyzz/bin/apachectl [start|stop|status|configtest]
* Lastly, create the new site from learnexa.com as admin, and provide the virtualhost entry(cname entry) to the customer to have them map it to the domain name.
(1) When we have multiple app servers /front ends at which point do we segregate (this will be researched and added in the LB architecture document)
(2) Single DNS failover service + multiple LB configuration + multiple sites / servers where the actual configuration resides and replicated needs to be researched.