Can't map certain port and path with hosts file
On my localhost I'm trying to map http://127.0.0.1:8888/site/ to www.test.dev. Hosts file is below.
When I load http://127.0.0.1:8888/site/ I see what I want but for www.test.dev I just see Firefox's Server not found page.
What's wrong with my hosts file?
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
fe80::1%lo0 localhost
127.0.0.1:8888/site www.test.dev
Solution 1:
The hosts file maps names to IP addresses. You cannot put ports or paths in there.
Solution 2:
In your local hosts
file, replace your
127.0.0.1:8888/site www.test.dev
with
127.0.0.1 www.test.dev
then you can visit http://www.test.dev:8888/site
If you want http://www.test.dev/
to retrieve the same site, you can configure your webserver to also listen on port 80 (as well as 8888) and configure virtual hosting in which case the webserver can use the HTTP headers passed by the client (Host: www.test.dev
) to identify the required site.
How you do this depends on the webserver you use. For Apache see the documentation for Listen and Virtual Hosts
To make testing easier - use relative URLs throughout the site content. It shouldn't normally be necessary to do what you are asking.