Landed my first “real” client. How do I set up a test environment for Wordpress, then migrate it to the client?

The scale of noob to pro on wp deployment goes like this:

Noob: 1. Make it online on the live domain (hope nobody is going there yet! lol)

  1. Make in a sub folder or sub domain then copy it over after approval (a plugin really does help here because it automates changing all the damn URLs and things that wordpress hardcodes, despite the advice you may get to do it manually)

  2. Develop on your local machine, with a modified hosts file so that you can test on the real live domain name, then open a port on your router and let the client preview the site served directly from your computer, and when approved copy it over to the live site for instant predictable results (dont forget to import the database as well of course)

Pro:

  1. If you are working on more than one site, the hosts thing will gob you up because it really only works with one IP (local loopback) and one domain name. So to remedy this you will need a virtual machine software, that then loads up some LAMP stack or similar, which you can install wordpress on, and also you can configure the virtual machines to use the real domain name you need with THEIR host file, and point traffic to each individual one (for clients to test) via ports added to your public IP.
/r/Wordpress Thread