I would never set up a web server on my main machine. I have a framework I built that allows me to maintain two, synced, databases and two, synced, sites. I use a text file to tell tell the cron job what, if anything, to move from development to live every night. Then my testing happens on the same server as my live work so I don't have any stupid conlficts showing up at go live.