DEV Community

SHAWNHOSEA for Begin

Posted on

Setting up a Namecheap domain on Begin.

Introduction

This article will give you a complete walk-through for setting up your Namecheap domain on your Begin app. The entire process should take no longer than 10 minutes.

Although you may use a free registrar-based DNS to host your domain on Begin such as Godaddy, Namecheap, One.com, etc., Route53 is the preferred registrar and DNS management system for Begin users:

  • It's integrated with Amazon's other cloud services.
  • Your DNS will resolve from 15+ locations worldwide, making your website faster for your end-users.
  • Route53 is a DNS management system (Smart DNS) compared to all the others, which are merely domain registrars with a limited feature set for manipulating DNS.

Check out our guide for Setting up an AWS Route53 domain on Begin


This article assumes that you have already:

  • signed up for Namecheap
  • purchased the domain of your choice
  • created your Begin app to map your domain

Step 1: Getting started.

The first step in domain mapping is to enter the domains you'll be using.

Begin's first-class support for staging environments means you'll need to add a staging domain (or subdomain), too.

Say your domain is www.zombo.com. We'd suggest keeping it simple and setting your staging domain to staging.zombo.com – but you can also opt to configure it to be zombostaging.net if you prefer.

This article is for users that want to map a naked domain. A naked domain (also referred to as a zone apex) is simply a domain set up to respond to requests without a subdomain. For example:

  • https://begin.com is a web address using a naked domain
  • https://docs.begin.com has a subdomain and is thus not a naked domain.

Namecheap has the ability to add ALIAS records (also sometimes called ANAME, or A ALIAS), in order to create a mapped naked domain.

In the next step, you'll enter the first two values in your DNS provider's interface, which will prove you own your domains and generate your SSL certificates.

Screen Shot 2021-01-14 at 6.42.28 AM

Step 2: Verify your ownership of the domain(s).

In this step, you'll need to add two CNAME values to your Namecheap DNS in order to verify your ownership of the domain and generate your SSL certificates for HTTPS.

Head back to the Namecheap console and navigate to the Advanced DNS page for your specific domain. During the SSL verification step, the first part of the name gets entered as your CNAME subdomain, and the value is inputted as the value. For instance, when you're provided the following CNAME entry:

  • Name: _2f9b34277e4b159e0beaa859e8802a93.www.example.com
  • Value: _58cb94c5d71976edd03e8303fc1a126b.acm-validations.aws.

You'll add a CNAME subdomain of

  • _2f9b34277e4b159e0beaa859e8802a93 within your Namecheap
  • Host zone, and set its value to _58cb94c5d71976edd03e8303fc1a126b.acm-validations.aws..

Screen Shot 2021-01-14 at 7.20.50 AM

Due to the eventually consistent nature of DNS-based verification, it may take a few minutes for your changes to get picked up. Check back after a few minutes, and your values should be green, and you should be able to complete the next and final step.

If for some reason after more than a few minutes your domains haven't verified, make sure that you've correctly entered the settings into your DNS.

Screen Shot 2021-01-14 at 6.44.32 AM

Step 3: Map the domain to your Begin app.

In the final step, you'll add the final CNAME and ALIAS records to your Namecheap. This points your domain at your Begin app.

When you provide the CNAME record:

  • Switch to CNAME record setting.
  • Host: staging
  • Value: pi1f6fddqd0dje.cloudfront.net

When you provide the ALIAS record:

  • Switch to Alias record setting.
  • Host: @
  • Value: pi1f6fddqd0dje.cloudfront.net

Conclusion

Now we're done! You can check to see if your domains are online with this DNS Checker tool.

Keep in mind that it make take a few hours for DNS to fully propagate so be patient.

Starting over

Something not looking right? No sweat, DNS can be finicky. If you need to hit the reset button, just click Start over (or, if you've finished mapping your domain, Delete domain mapping).

Your app will then be restored to its original yourappname.begin.app URLs, and you'll be able to re-map your domain again.

Discussion (0)