How to Add Custom Domains to Nife Apps | Step-by-Step Guide

Map your custom domain to applications and static sites in a few simple steps.


Before You Start#

What you need:

  • Registered domain name (e.g., myapp.com)
  • Domain registrar account access
  • Ability to modify DNS records
  • The domain must be registered before adding

Where to register:

  • GoDaddy
  • Namecheap
  • Bluehost
  • AWS Route 53
  • CloudFlare
  • Any domain registrar

Step 1: Choose Resource Type#

Add Domain to Application#

For deployed web applications:

  1. Go to Domains page
  2. Click Map Custom Domain
  3. Select Application
  4. Choose app from dropdown

Requirements:

  • Application must be deployed
  • Application must have external port
  • Must have active status

Add Domain to Static Site#

For deployed static sites:

  1. Go to Domains page
  2. Click Map Custom Domain
  3. Select Static Site
  4. Choose site from dropdown

Requirements:

  • Site must be deployed
  • Site must be active
  • S3 bucket must be configured

Step 2: Enter Domain Name#

Domain Name Format#

Enter your custom domain:

Full Domain:

myapp.com
www.myapp.com
api.myapp.com
blog.myapp.com

Subdomains Allowed:

subdomain.myapp.com
v2.api.myapp.com
staging.myapp.com

Valid Format:

  • Lowercase letters (a-z)
  • Numbers (0-9)
  • Hyphens (-)
  • Dots for subdomains

Invalid Format:

  • Uppercase letters
  • Spaces
  • Special characters (except hyphen and dot)
  • Bare domain without TLD

Domain Requirements#

Valid Domain:

  • โœ… Registered with registrar
  • โœ… Active and not expired
  • โœ… You own or control it
  • โœ… 1-63 characters per label

Invalid Domain:

  • โŒ Not registered
  • โŒ Expired
  • โŒ Belongs to someone else
  • โŒ Invalid characters

Step 3: Review Connection Details#

Before confirming, you'll see:

Connection Information:

Resource: myapp-api
Domain: api.myapp.com
Type: Application
Current URL: myapp.nifetency.com
DNS Record Type: CNAME
Value: app.elb.nifetency.com

What this means:

  • Your domain will point to Nife infrastructure
  • CNAME record redirects traffic
  • Automatic SSL certificate will be provisioned
  • Domain will be active within 5-30 minutes

Step 4: Update DNS Records#

Understanding DNS#

DNS (Domain Name System) translates domain names to IP addresses.

DNS Records:

  • CNAME: Points domain to another domain (recommended)
  • A Record: Points domain to IP address
  • ALIAS: Special record type (some registrars)

Access Your Registrar#

  1. Log into your domain registrar
  2. Find DNS settings (may be called "Nameservers," "Records," "DNS Management")
  3. Look for DNS or Advanced options

Common Registrars:

  • GoDaddy: GoDaddy.com โ†’ Domain Control Panel
  • Namecheap: Namecheap.com โ†’ Manage Domain
  • Bluehost: Bluehost.com โ†’ cPanel
  • AWS Route 53: AWS Console โ†’ Route 53

Add CNAME Record#

For most domains, add a CNAME record:

  1. In your registrar, find DNS/Records section
  2. Click Add Record or Add CNAME
  3. Fill in:
    • Name: api (subdomain part only)
    • Type: CNAME
    • Value: app.elb.nifetency.com (from Nife)
    • TTL: 3600 (or default)

Example for api.myapp.com:

Name: api
Type: CNAME
Value: app.elb.nifetency.com
TTL: 3600

Example for www.myapp.com:

Name: www
Type: CNAME
Value: app.elb.nifetency.com
TTL: 3600

Add A Record (Alternative)#

If CNAME not available:

Type: A
Name: @
Value: [IP Address from Nife]
TTL: 3600

Step 5: Verify Configuration#

Wait for DNS Propagation#

DNS changes take time to propagate:

Timeline:

  • Immediate: Changes saved at registrar
  • 5 minutes: Most ISPs see change
  • 1 hour: Most providers updated
  • 24-48 hours: Complete propagation

Test Your Domain#

Before propagation completes:

  1. Check DNS record saved in registrar
  2. Use online DNS checker
  3. Wait 5-15 minutes before testing

After propagation:

  1. Open your domain in browser
  2. Should show your application
  3. Check for lock icon (HTTPS)
  4. SSL certificate should be valid

Verify in Nife#

  1. Go back to Domains
  2. Find your domain in list
  3. Status should show "Active"
  4. SSL column shows "Secured"

Troubleshooting#

Problem: Domain Not Working#

Symptoms:

  • Domain shows error page
  • "Site not found" message
  • DNS lookup fails

Solutions:

  1. Verify DNS record:

    • Go back to registrar
    • Check CNAME value is exactly correct
    • Remove any extra spaces
    • Check TTL setting
  2. Wait for propagation:

    • DNS takes up to 24 hours
    • Check status with: nslookup myapp.com
    • Use online DNS checker tool
  3. Check domain spelling:

    • Verify domain name is correct
    • Check for typos
    • Confirm registrar shows active
  4. SSL certificate:

    • May take 5-10 minutes to provision
    • Check in Nife dashboard
    • Certificate should show "Valid"

Problem: HTTPS Not Working#

Symptoms:

  • Page loads but no lock icon
  • SSL error in browser
  • Certificate error

Solutions:

  1. Wait for SSL provisioning (5-10 minutes)
  2. Refresh browser (hard refresh: Ctrl+F5)
  3. Clear browser cache
  4. Check certificate status in Nife

Problem: Old Domain Still Works#

Symptoms:

  • Old domain still resolves
  • Both old and new work
  • Confused which to use

Solutions:

  1. Old domain will continue working
  2. Can use either domain
  3. Consider setting up redirects
  4. Update links to new domain

Problem: Email Not Working#

Symptoms:

  • Email stopped working
  • Cannot send emails
  • Email bounces

Solutions:

  1. CNAME record doesn't affect email
  2. Keep separate MX records for email
  3. Don't replace MX records
  4. DNS should have both CNAME and MX

DNS Record Examples#

Gmail Custom Domain#

Keep these MX records:
aspmx.l.google.com (priority 10)
alt1.aspmx.l.google.com (priority 20)
Add this CNAME:
www CNAME app.elb.nifetency.com

Forwarding Email#

MX Records: (for email service)
api CNAME app.elb.nifetency.com

Subdomain#

api CNAME app.elb.nifetency.com
www CNAME app.elb.nifetency.com

Best Practices#

1. Double-Check Values#

  • Copy CNAME value exactly from Nife
  • No extra spaces
  • Correct capitalization
  • Remove old records if present

2. Use Descriptive Names#

For subdomains, use clear names:

  • โœ… www for main domain
  • โœ… api for API endpoint
  • โœ… blog for blog section
  • โŒ app1, test, temp

3. Set Appropriate TTL#

  • Lower TTL (300): More frequent updates, slower to propagate
  • Higher TTL (3600): Less frequent updates, faster propagation
  • Default (3600): Usually fine for most cases

4. Keep Email Working#

  • Don't replace MX records
  • Keep both CNAME and MX records
  • MX for email, CNAME for web traffic
  • Test email after DNS changes

5. Monitor After Setup#

  • Verify domain works
  • Check HTTPS works
  • Monitor for errors
  • Keep DNS records documented

6. Update Links#

  • Update bookmarks to new domain
  • Update documentation
  • Update social media links
  • Update any hardcoded URLs

Multiple Domains#

Same App, Multiple Domains#

Add multiple domains to same application:

myapp.com โ†’ myapp-app
www.myapp.com โ†’ myapp-app
app.myapp.com โ†’ myapp-app

Each domain needs:

  • Separate CNAME record
  • Same target (same app)
  • Separate SSL certificate (auto-provisioned)
  • Added through Domains interface

Subdomains vs Root Domain#

Root domain (example.com):

Type: A Record (or CNAME depending on registrar)
Name: @ (or leave blank)
Value: IP address or CNAME target

Subdomain (www.example.com):

Type: CNAME
Name: www
Value: app.elb.nifetency.com

Next Steps#

  1. DNS Configuration - Detailed DNS setup
  2. SSL Certificates - Certificate management
  3. Monitoring Domains - Track domain usage

Support#

Issues adding a domain?

  • Check troubleshooting section above
  • Verify DNS records in registrar
  • Wait for DNS propagation
  • Contact support: [email protected]