WCATX: Moving Sites and Managing Domains
May 23, 2013
In his presentation at WordCamp Austin 2013, presenter Chris Weigman, Senior Developer at Springbox, talked about the steps required in moving domains and changing web hosts.
Why Move a Domain Name?
- You’ve outgrown your shared or other host
- You want a new host
- You want a development site
- You’re rebranding your site
- You picked the “wrong” domain name
What are Domain Names?
- Associating number, called an IP address, with short handle
- A numerical name assigned to every device on the internet
- Maps a human readable name to an IP address
- Example: Facebook.com is the same as
- 0:0:0:0:0:ffff:adfc:6e1b (IPv6 Expanded)
- 10101101.11111100.01101110.00011011 (binary octets)
- 2919001627 (decimal)
- 184.108.40.206 (IP address)
Doman Names and WordPress
- Your server your host on has an IP address
- IP addresses are set in DNS
- Many shared hosts have many sites on a server
- This is why you can’t often to your site by just entering the IP address
- You’re have to pay for a unique IP address to access it directly
- DNS entries are cached–often for days
- Tip: Don’t register your domain name with your web host If you get locked out of the web host, you will also get locked out of your domain name.
- Services that provide easy migration:
- What you will need for manual migration:
- A good backup
- Access to DNS
- Direct access to database on both hosts
- Access to wp-config.php and .htaccess files
- New username and password
- What you will want:
- Navivat, a database management tool for transferring databases between servers
- Forklift, very FTP software
Preparing for the Web Host Move
- It’s easier to deactive on old host and reactivate on new host
- One week out from the move:
- Lower the TTL (Time To Live) setting on your domain to 1 minute
- One day out from the move:
- Make sure you have access to files and databases on both hosts, passwords, addresses, etc.
The Web Host Move
- Create a fresh backup
- Create a database on the new host
- Write down database name, username, password
- Use navigate to copy the old database to the new host
- Use forklift or ftp app to cover over all the files
- Edit wp-config.php
- Update database name, db username, password
- Update path info if preset (you’ll have to get this from your host)
- Update .htaccess, if necessary
- It’s easier to deactivate and then reactivate plugins
- Change the DNS address (and it will take time to propagate through the Internet)
- Test the site to see if it’s changed.
- If something goes wrong, simply change back DNS and start over
After the Web Host Move
- Increase TTL on your DNS to one day or more
- Close old hosting account
Moving Web Hosts Tips
- If you’ve outgrown your shared host don’t get another shared host
- Warn your users that a move is happening
- Test your backup
- See if your host can migrate it for you. Most web hosts offer services to make this move for you.
What to Watch Out When Moving Web Hosts
- Domain/host are on the same account
- Plugin settings – some plugins will need their settings resaved
Changing Domain Names
- A domain name is nothing but an alias to the IP address of your site
- What you will need:
- IP address of your host
- Access to your site via FTP/SFTP
- Note: cPanel or other host access will work as well
- The username/password of your database
- In WordPress, found in the wp-config.php file
- Search and Replace DB
- This small PHP script replaces every instance of old domain name to your new database with your new domain name.
Moving Domain Names
Tips for Moving Domains
- Keep domain name separate from you web host
- Watch Google very closely
- Don’t turn off the old domain, just redirect it.
What to Watch Out When Moving Domains
Create Dev Environment
- Create a domain name for your computer or local IP
- Copy Files and database to local computer
- Changing domain name and host
- Use GitHub/DeployHQ
- Separate branch for production/dev/merge and deploy
- Use host staging area (WPEngine and others) if not a developer
Putting It Together
- Changing domain names really just require changing the database and .htaccess/wp-config.php to replace the old with the new.
- Changing hosts requires only the changing of the server address and updating the wp-config.php on your host once database and files are directly copied over
- A dev environment is just copying host and a new domain to your local machine.
- The 2 biggest point of failure
- Not making sure the new works before turning off the old.
- System failure without a backup.