There’s no shortage of help out on the web for building websites, but, what about once you’ve built your site? It has to be made live and published for the world to see.
We’ve deployed quite a few hundred sites in our time and I thought I’d share a few hints and tips to ease the process and make it more streamlined.
Firstly, there are two main types of deployment:
1. Brand new website
2. Update to an existing website.
The second of these is generally far more difficult to deal with, normally DNS and email will already be setup.
Step 1 – Get your DNS in Order
Don’t underestimate how long this might take, often it will involve your customer digging out information they have filed away years ago.
You need to find the following:
- Registrar – which company is managing the domain? You can find out by doing a WHOIS on the domain. We use DNS Stuff for this. See example.
- If the domain hasn’t been registered, it’s easier to do this yourself with your preferred company. We use http://www.ukreg.com/ normally, and, their system isn’t bad.
- If the domain has been registered, you will need the login details to make amendments. Some times, customers might be reluctant to give you this, so you’ll have to do everything via them.
- Take a snapshot of the DNS. If you change records later, you’ll want to know easily what to revert back to if something goes wrong. We do a DNS Report for every domain using DNS Stuff and save it. You can also take a screenshot of your Registrars name server setup or save the zone file if you have complete control. We write down IP information for our various servers in our Wiki so when we come to do updates we have the information quickly to hand.
- Determine what name servers the domain is on. This is normally the ones provided by the registrar but could quite possibly be another company. Again, you can determine this from a WHOIS or DNS Report. We prefer to use our own DNS company, it gives us more flexibility and we know we can do certain things not all providers offer (such as changing TTL – see the right way to move a domain).
Step 2 – Sort out hosting
- Do you have any monitoring? If the server grinds to a halt, you’re going to want an idea why. We use Munin
- Have you got backups setup? Are they offsite?
- Do you have the web server and database server configured and appropriately optimised?
- Can the server send email? If there is an SPF record for the domain (there should be) then you’ll need to add the IP of the server. If the server is sending email directly, it should have a reverse dns entry to the server.
Step 3 – Register SSL
- Check to see if the existing site already has a cert. Ask the client if they have the cert details, they probably don’t want to buy another if they can avoid it.
- Getting SSLs setup can take a while (not going to go in to how you do this, maybe another day), mainly because of the verification process. You will quite likely need access to the name servers to add verification information in to prove you/your client owns the domain name. Allow a few days for this!
Updating DNS/Name Servers
Ok, so you’re ready to simpleweb.co.ukitch off your old site and move to your new site! Exciting…
But, there’s a right way and a wrong way to do it.
“We’ve done the DNS update, we’re just waiting for it to propagate and this will take 24/48 hours”.
Do you need to change name servers?
- Don’t try and update records at the same time!
- Setup your new target name servers to be exactly the same as the old ones.
- Switch name servers.
- Find the TTL (time-to-live) for the records you want to change. You can do this with a DNS Stuff Domain Report or it should be in your DNS configuration. The TTL is the amount of time the record will be cached.
- If the TTL is 1800 (expressed in seconds), this is 30 minutes the record could get cache. It’s typical for this to be about 1 to 6 hours. Reduce the TTL down to something like 60 seconds or 120 seconds. But… you need to wait the original TTL for things to get flushed out before you are ready to update.
- Change your record after the original TTL has expired. There should then only be a 60/120 second window when they might get the old record though…. but this isn’t necessarily true! Why? Because you are only changing one name server normally, and the changes need to propagate. Knowing how long this might take is again down to name server setup (partly why we like to use ours) and further TTLs on the actual domain itself.
- When everything is a-ok, put the TTL back up (otherwise every lookup will end up going to the main name servers first).
If you’d like to discuss your startup or project, get in touch with Simpleweb today.