Testing Your Web Site Before Changing DNS
Contents
Using Your Computer's Hosts File to Test Your Web Site
When migrating your site to a new server, you want to test your site before updating the DNS to point to the new server. To do this you can use your computer's hosts file to force your computer to visit the new server when visiting your domain name.
Introduction
Your computer's hosts file is a local repository for resolving a domain name to an IP, and this method predates modern DNS systems. The computer checks its hosts file before making any DNS requests to resolve a domain. This allows you to adjust your hosts file to force your computer to visit a different IP address when visiting your domain name.
Example
Below is example from a Windows hosts file that shows google.com and www.google.com pointing to a different IP address than what is reported by a DNS lookup.
# Copyright (c) 1993-2009 Microsoft Corp. # # This is a sample HOSTS file used by Microsoft TCP/IP for Windows. # # This file contains the mappings of IP addresses to host names. Each # entry should be kept on an individual line. The IP address should # be placed in the first column followed by the corresponding host name. # The IP address and the host name should be separated by at least one # space. # # Additionally, comments (such as these) may be inserted on individual # lines or following the machine name denoted by a '#' symbol. # # For example: # # 102.54.94.97 rhino.acme.com # source server # 38.25.63.10 x.acme.com # x client host # localhost name resolution is handled within DNS itself. # 127.0.0.1 localhost # ::1 localhost 192.168.1.204 google.com 192.168.1.204 www.google.com
How to Edit the Hosts File
Windows PC (Windows 95 / 98 / Me / 2000 / XP / 2003 / Vista / 7)
- Open Notepad as Administrator:
- Click the Start menu, open All Programs --> Accessories
- Right-click Notepad and click Run as Administrator
- In Notepad click File --> Open and find the hosts file at the appropriate location:
- Windows NT / 2000 / XP / 2003 / Vista / 7:
C:\windows\system32\drivers\etc\hosts
- Windows 95 / 98 / Me:
C:\windows\hosts
- Windows NT / 2000 / XP / 2003 / Vista / 7:
- On the last line add your entry as shown below then save and close Notepad. This example assumes we want to point domainname.com to 132.232.249.198.
132.232.249.198 domainname.com
Mac OS
- Open a finder window and open your Applications folder
- Open the Utilities folder
- Locate the Terminal app and double-click it
- When the terminal opens, enter this command:
- Mac OS 10.6 and higher:
sudo nano /etc/hosts
- Mac OS 10.5 and below:
sudo nano /private/etc/hosts
- Mac OS 10.6 and higher:
- Enter your Mac user's password when prompted
- On the last line add your entry as shown below. This example assumes we want to point domainname.com to 132.232.249.198.
132.232.249.198 domainname.com
- Press ctrl-x, then press y when prompted to save your changes
Linux
- SSH into your console or open your terminal if you run a GUI on your Linux machine.
- Enter this command: sudo nano /etc/hosts
- Enter your root password when prompted
- On the last line add your entry as shown below. This example assumes we want to point domainname.com to 132.232.249.198.
132.232.249.198 domainname.com
- Press ctrl-x, then press y when prompted to save your changes
Note: If you plan to test with the www version of your domain name, you must add an entry for the www version of your domain to the hosts file.
You may also need to flush your computer's DNS resolver cache after making these changes too.