LiveHosts is a Chrome extension that aims at providing a working (even if sub-obtimal) solution to a common nuisance that many web developers have to deal with every day. If you have multiple versions of your websites sharing the same host names on multiple environments, you often need to switch the assignments in your OS hosts file.
Other extensions (like the life-saving HostAdmin) can help with the cumbersomeness, but changes to the hosts file usually take an inconvenient amount of time to actually affect the browser.
Unfortunately, there is no way to make Chrome direct requests for a hostname to a specific IP without a standard redirect – you could set up a smart HTTP proxy, but it’s often not possible or not convenient.
This extension settles for a sub-obtimal approach: requests to the indicated hostnames are redirected to the chosen IPs with an additional Host header. The browser’s address bar reflects this behaviour showing the hostname right after the IP (e.g. http://127.0.0.1/www.example.com/). The extension also tries to take care of all requests to either the IP or the hostname in a consistent way.
Issues
After the redirect, the user is effectively in a different domain that the one they expected. They may notice some functional differences:
– depending on the server, parts of a web page referring to the site URL (like href and src attributes) could be different from the original
– window.location has a different value that can potentially throw off JavaScript snippets
– most Cross-Origin request won’t work
Only one I found so far that works. Great job
It did the basics of what I was wanting it to do, but I was hoping to have the ability to also put a non-default port on the end of the IP address that it could use for that host name instead. That seemed to take Chrome back to as if I didn’t have the entry at all.
Just to the point and functional.
Hard to use
Muito boa! Recomendo!
It’s a nice concept, but it doesn’t really work perfectly. Redirects break the system, so for example if I want to test a virtual host for “foo.mysite.com” on a local server 192.168.x.x, but the main page of “foo.mysite.com” specifies a redirect to “/login”, for example, the mapping won’t kick in again and it’ll try to send me to 192.168.x.x/login without faking the hostname being used, so the virtual host doesn’t end up being used. The same also happens with HTTP-to-HTTPS redirects.
I don’t think this will work with WordPress on a Local Web server installation? B/c it’s changing the URL to IPaddress/wp-admin the server doesn’t recognize it. Is there a way to make this work with WordPress on a WAMP installation?
Guy, the behavior is incorrect.
First of all is not the same origin of . Chrome will consider the two sites in a totally different way. The request is correctly sent, and the server should work, but the thing is at the client side: Chrome does not work this way.
Secondly it wont work with HTTPS. The certificate returned by the server is for , not for .
Surely it is still useful some way, but what I am really looking for is sth. that works exactly the same way /etc/hosts works.
firstly, sorry for poor English language
I have a live site
and a local copy of it on xampp that I work on it for testing.
I established a virtual-host in xampp server config
to work on local version, I have to add “127.0.0.1 example.com” in host file to open site with domain instead of “http://localhost/”
then by commenting this line I access to live version
your addon worked for me but the URL start with 127.0.0.1 not example.com
is there any way to solve this problem?
It doesn’t work for me at all? I give it a real hostname and an internal IP number but what it does is it redirects me to http:/// Sorry, this makes no sense at all.
non funziona su chrome in osx
I’m not sure if I do something wrong or this extension is really not doing what it states.
What I expect is that if there is a host test.dev which originally points to 1.1.1.1 and I want to try out another server with the same hostname then I add the new ip to the /etc/hosts like:
2.2.2.2 test.dev
I tried the same with this plugin and all it does that it rewrites the URL of test.dev to 2.2.2.2 which makes no sense as it wont be caught by the same web server config
You save my life, man
UPDATE: I wrote the below review too soon, just based on the description of the extension. I was that excited. I’ve since discovered it has no effect at all in my browser. Will update this review if that changes. The other reviews are so recent, I don’t think it’s that the extension is outdated, at all. Will see what I can do.
ORIGINAL REVIEW
Absolutely brilliant. As a web developer and server admin, I often have to work with two versions of the same site (and old copy, and a freshly migrated copy, on a new server, for instance). I’ve had to rely on changing the Host file, clearing Mac OS cache, and then closing Chrome as it seems to retain DNS data even after I use its hidden option for clearing that data. It’s a pain. This extension is perfect. Thank you. Please keep up the great contributions.
Does what it says it does, perfect. There are so many extensions which do not do what they claim to do (i.e. host swtich +). This lets you munge /etc/hosts without munging /etc/hosts. No more clearing DNS [not that it easy to inspect any more on newer chromiums, logging to file after the fact is v.poor substitute.] Anyways fantastic extension, no more vi, Ctrl-Shift-N. Saves lots of time.