什么是hosts文件?
简单的说,hosts文件是用于本地dns服务的,采用ip 域名的格式写在一个文本文件当中,Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统再会将网址提交DNS域名解析服务器进行IP地址的解析。
SwitchHosts
官网地址:https://swh.app/
SwitchHosts是一个管理、快速切换Hosts小工具,开源软件,一键切换Hosts配置,非常实用,高效。其主要功能特性包括:
我们在开发Web项目过程中,一般会部署有多套环境,网址域名都相同,部署在不同的服务器上,有开发环境、测试环境、预发布环境、生产环境。经常要切换Hosts来访问,测试以及验证bug,如果纯手工修改这会花掉不少时间。
普通方式切换host
- 1.找到我们机器的host文件
Hosts文件路径为:C:\Windows\System32\drivers\etc
- 2. 将其拖拽到桌面(或其他位置,这里是因为系统限制,在该文件夹内修改不会生效)
- 3.使用记事本工具打开hosts文件
- 4.修改里面的ip以及对应域名
- 5.保存并拖回原位置
注意:ip和域名之间有空格,不同域名之间也有空格分割,而ip和域名要保持在同一行
如果我们经常有多个环境需要切换不同的ip时,每次这样更改就比较麻烦了。这个时候就需要一款可视化修改工具了
SwitchHosts切换host(推荐)
- 1.下载
官网点击下载按钮,即跳转到下载页面(Releases · oldj/SwitchHosts · GitHub),选择不同的系统下载
- 2、下载完成后,解压压缩包,会有一个exe可执行文件
- 3、exe文件右键选择以管理员身份运行,并建议给全体用户安装(现在大多都是个人电脑,应该也无所谓),安装完成后页面如下(这里使用的网图,因为我已经安装过了,不是初始界面,同时因为版本问题,按钮位置和按钮形状可能会有些许不同)
SwitchHost使用
新建分组,一般是正式环境一组,测试环境一组,本地开发一组
没有权限?
当出现这个情况需要检查host的可读写情况
打开host文件(C:\Windows\System32\drivers\etc\hosts)右键属性
需要保证这里未被勾选及当前有足够权限
可以看到我们这里是没有权限的,需要给他权限,点击编辑,给足权限
点应用,然后一直确定
成功!
注意事项
- 1、如果使用了代理,修改 Hosts 也不会生效。因为浏览器会优先考虑代理工具的代理,建议调试的时候先关闭代理。
- 2、修改了hosts不生效,一般需要重启浏览器,如果是google浏览器可以不用重启,可以借助chrome://net-internals/#dns chrome://net-internals/#sockets 清掉
keep-alive
和清浏览器 DNS 缓存。