Setting up mail to send to your domain should be a fairly simple task for web developers in this day and age but, unfortunately… it is not. I am working on a client’s site and I needed to set up emails for their domain. For example, firstname.lastname@example.org. I thought this would be simple but because I bought my domain through GoDaddy and am hosting through DigitalOcean – the process took a bit longer than I thought. Below are the steps you need to follow to set up emails on your GoDaddy purchased/DigitalOcean hosted domain.
Step 1: Sign up for a Google Apps account
I love Google Apps and I think it is the most reliable way to set up email for a client. It does come at a very small cost but they offer great support for their enterprise customers and the email is simple to use. You will not need to train your client in how to use the email and once you move off of the project, it is one less thing to troubleshoot as Google has great infrastructure and support. There is no reason to be running email through a custom email client, unless of course you prefer to do additional setup.
Step 2: Verify your domain ownership through Google Apps
Step 2 comes with a variety of other steps as it is more complicated than clicking”verify my domain.” The problem here is that Google is going to go to GoDaddy and say, “hey do you own this domain?” GoDaddy is going to point them to your DNS record (which you set up through DigitalOcean). Google is then going to walk over to DigitalOcean and try and figure out who owns this domain. You did setup your DNS through DigitalOcean but DigitalOcean does not keep track of the DNS text file that Google requires as verification. Here is what you need to do.
Go to Google Apps console and click “verify my domain.” When they ask who your host is, click “other.” This will lead you to another screen where you will likely have to click “other” again. Do this until you see the txt record for your DNS. A box should appear with one line of text beginning with: google-site-verification
Step 3: Copy and paste DNS text string
You are going to copy and paste this line as we are going to add it to your DNS on DigitalOcean.
Step 4: Add TXT record to your DNS
Where is says “Enter Name” add in the @ symbol. Where it says text you need to add in the text you just copied from Google Apps. It is also a good idea to add in an SPF record for your domain. You can read more about that in this tutorial from DigitalOcean.
Once these two things have been added you will see that your DNS record look like this:
Step 5: Wait.
Now that you have added the proper DNS you will just need to wait for DigitalOcean to propagate those changes. Take a little break and try verification again in about one hour.
Please note that you will need to add MX records to your DigitalOcean account if you have not already. Here is a tutorial that explains how to add these. Scroll down to MX records and follow the instructions. Good Luck!