Note: This was drafted on 1/1/2021 and finalized today.
Note: WP Engine recently partnered with Cloudflare to make this a little easier. See here for instructions on how to set up WPEngine’s new Advanced Network using Cloudflare. If you’re only looking for how I setup the Cloudflare stuff, you can jump down the page by clicking here.
I post mainly about IRL Experience Design and IRL Experiences, but sometimes in the course of my work I learn technical things that I want to share. Usually because I didn’t find a good source for the information myself. Maybe this post will be found by and help someone who has a similar issue.
This isn’t a how-to as much as a list of things I learned.
Explanation of CNAMEs, ANAMEs, IP Addresses, etc.
Here’s how I understand the terms.
- Hosting Provider. Imagine this is your grocery store (for me, HEB).
- IP ADDRESS = these are the numbers tell you where each department is in the store. For example, 180.80.10.10. is in a department called “Fish Department”. Think of those numbers as GPS coordinates. The name “Fish Department” is the CANONICAL NAME.
- Now imagine you had to send someone to the store to get some fish. You can give them the GPS Coordinates or you can tell them to go to The Fish Department. (But not both).
- If you give them just the GPS coordinates and the Fish Department has been moved, then they will end up at the wrong place.
- If you give them just the name Fish Department, then they’ll have to go to the front desk and ask where it is (to get the GPS coordinates).
- In the first case, you’re screwed. In the second, you’ll have to do another step, but you’ll always get to where you need to go.
- The front desk knows where everything is. The “Front Desk” is the collection of DNS RECORDS that exists at your hosting provider (HEB). A record is a RULE.
- The “@” symbol stands for the apex domain. It is the IP address of your root domain. It must always be an IP ADDRESS. In other words, it can’t be “idlx.com” it has to be numbers, like “184.40.98.91”
- The “CNAME” type record must always be a CANONICAL NAME. It can not be an IP Address. That means the words: idlxd.com
- The “www” issue.
- The internet for reasons I don’t understand, needs to know not just eurekaroom.com but also www.eurekaroom.com
- So we need to tell it about the www (also referred to as a subdomain)
- To do that (I think) you can create a CNAME record type that points www to your CANONICAL NAME OR create a forward from the www to your CANONICAL NAME. This is all moot if you just use the Cloudflare solution in the second half of this post.
WPEngine and Hover.com (Old Way – Without Cloudflare Advanced Network)
Not recommended.
Find your WPEngine domain. Create 2 CNAMES. Here’s what my setup looked like at hover for one of my sites:
Make sure you review WPEngine’s “Go live checklist” to see if there are other steps you need to take. (At a minimum, you’ll need to update the URLs in the wordpress admin.
WPEngine and Hover.com (New Way – With Cloudflare Advanced Network)
Recommended solution.
This is much easier. We’ll just add 2 CNAMES: the “@” and the “www” and 2 A names. You’ll get the A names from the “Domains” section of your WPEngine admin page:
Here’s the 4 records added into Hover.com:
Note: Remove any forwards you might have set elsewhere in hover.
Make sure you review WPEngine’s “Go live checklist” to see if there are other steps you need to take. (At a minimum, you’ll need to update the URLs in the wordpress admin.