目录
作为一名WEB开发者,有些时候我们在进行本地开发测试的时候,我们需要在PC上会使用修改hosts
的方式添加指向本地的域名,来访问网站。如:
127.0.0.1 albertyy.com
但是在移动端的时候,这一招就不好使了,苹果手机必须越狱的情况才能修改hosts
的,安卓手机必须在root的情况下才能修改hosts
,这非常的不方便。我们可以通过配置本地DNS服务器解决这一问题。
1.安装Homebrew
Homebrew是一款Mac OS平台下的软件包管理工具,拥有安装、卸载、更新、查看、搜索等很多实用的功能。简单的一条指令,就可以实现包管理,而不用你关心各种依赖和文件路径的情况,十分方便快捷。
1.1官网
1.2安装命令
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
1.3可能出现的错误
curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused
1.3.1解决方法1
443 端口连接被拒一般是因为墙的原因,如果你可以科学上网(Virtual Private Network)的话,在命令行键入以下命令执行后,重新进行安装:
# 8003 和 1081 需要换成你自己的端口
export https_proxy=http://127.0.0.1:8003 http_proxy=http://127.0.0.1:8003 all_proxy=socks5://127.0.0.1:1081
1.3.2解决方法2
在https://www.ipaddress.com/查询raw.githubusercontent.com的真实IP。
通过修改hosts
解决此问题
199.232.68.133 raw.githubusercontent.com
1.4常用命令
brew help 查看帮助
brew install <package name> 安装软件包
brew uninstall <package name> 卸载软件包
brew list [--versions] 列出已安装的软件包(包括版本)
brew search <package name> 查找软件包
brew info <package name> 查看软件包信息
brew update 更新brew
brew outdated 列出过时的软件包(已安装但不是最新版本)
brew upgrade [<package name>] 更新过时的软件包(不指定软件包表示更新全部)
brew doctor 检查brew运行状态
2.安装Dnsmasq
Dnsmasq 提供 DNS 缓存和 DHCP 服务功能。作为域名解析服务器(DNS),dnsmasq可以通过缓存 DNS 请求来提高对访问过的网址的连接速度。
2.1安装
brew update;
brew install dnsmasq;
2.2启动
sudo brew services start dnsmasq;
2.3重启
sudo brew services restart dnsmasq;
2.4停止
sudo brew services stop dnsmasq;
3.配置dnsmasq
3.1修改配置文件:
sudo vim /usr/local/etc/dnsmasq.conf
去掉以下配置字符的注释,并修改:
no-resolv
no-poll
listen-address=127.0.0.1,192.168.68.202
addn-hosts=/etc/dnsmasq.hosts
3.2添加自定义hosts文件dnsmasq.hosts
sudo vim /etc/dnsmasq.hosts
在文件中添加对应的域名关系,例如:
192.168.68.202 albertyy.com
重启下你的Dnsmasq,重启命令上边文章中已经给出。
3.3修改设备的DNS服务器
配置设备的DNS服务器为:192.168.68.202
备用DNS配置为一般常用DNS服务器就行。
(这里可以配置路由器的DNS服务器,也可以直接配置手机或者电脑的DNS服务器)
检测是否成功,可以使用dig命令:
dig albertyy.com
当你可以看到下面这条记录:
albertyy.com. 0 IN A 192.168.68.202
说明本地DNS服务器配置成功了。