Custom Domains for IoGT
Background
Users are aware of - and access - IoGT platforms primarily by their domain names, eg "internetofgoodthings.org".
If you are deploying an IoGT platform from UNICEF, you by default have a domain name like this: "ke.goodinternet.org". The domain is "goodinternet.org" and the subdomain, which is specific to your platform, is a short code which normally is the ISO two-character code for your country.
Customizing your domain
If you would like to customize this domain name, for branding or other reasons, you are able to do this. You might consider
- a shorter name that will be easier to type on feature phones, like iogt.uz
- a translation of "Internet of Good Things", so your audience feels the content is specific for them, like internetdelascosasbuenas.org
- a domain for your custom brand, like mambomazuri.co.tz
- a domain related to an existing brand that you want to align to rather than IoGT, for example your UNICEF office or a Ministry of Health
If you are deploying IoGT from UNICEF, your IoGT platform will continue to be available at your original goodinternet.org subdomain, but will also be available on your custom domain.
Purchasing a new domain
Speak with an ICT expert about the process of purchasing a new domain.
Setting up your new domain
This portion of the guide is written so that an IoGT Administrator can know the general process, but these steps will need to be completed by an ICT expert.
1. Set up your servers to listen for and direct traffic from your domain
A listener should be set up in your environment which directs traffic from your domain to the proper location in your Kubernetes cluster.
2. Configure where users will be sent when they try to access your domain
Your domain's DNS record should point to the IP address or domain address which is the entry-point to the environment containing your IoGT platform.
It's standard practice that a subdomain will point to a domain address, but if you are using a static IP address for zero-rating purposes then your subdomain should point to that IP. A domain (non-subdomain) will need to point to the IP address.
For UNICEF these addresses are
- 52.157.253.60
- uni-webs-aks-gw-pd-iogt.westeurope.cloudapp.azure.com
3. Set up your SSL certificate so that your users' communication with the platform is encrypted
Your domain vendor, or a certificate vendor, will be able to provide a certificate, or you can automatically create one through the IoGT system.
Certificates created by the IoGT system are created through Let's Encrypt and will be automatically renewed.
Certificates purchased through a vendor will need to be received in a proper format depending on how you have set up your IoGT servers - for UNICEF, which runs the servers on Azure cloud and stores certificates in the Azure Key Vault, the .pfx format is best. These certificates will need to be renewed, often annually.
Purchasing a certificate through a vendor can have the additional benefit of associating your organization's information with the certificate - this can give more confidence to your users, but is not very visible in most browsers and will often go unnoticed
Example of certificate with organizational information included:
Example of certificate without organizational information included:
4. Set up your IoGT platform to primarily use the new domain
After completing the first three steps, your platform should be accessible at your new domain.
You can now change your Site configuration in IoGT to match the new domain.
- In your Admin Panel, navigate to Settings > Sites
- Click in your Site, which will be named after your original domain
- Change the Hostname field to reflect your new domain name
5. Optional: Change your analytics tool to reflect the new domain
Some analytics platforms, like Google Analytics, are configured with a manually set domain. This can affect how the platform works, so you may want to update this to reflect your new domain. In Google Analytics data collection won't be impacted if you don't update the domain.
For Google Analytics (Universal Analytics):
- Go to the Admin tab
- Select your platform's Property
- Select Property Settings
- Change the Default URL to reflect your new domain name
Testing
With setup complete, you can test accessing your domain and performing user and Admin actions. There should not be any issues at this point, as IoGT dynamically adapts to supporting different domains.