做为一个前端开发者,会遇到使用cookie
的状况,常见的如:登陆,权限控制,视频播放,图形验证码等,这时候本地开发者在PC上会使用修改hosts
的方式添加指向本地的域名,来获取cookie
的同域名。如:css
127.0.0.1 local.smartstudy.com
可是在移动端的时候,这一招就很差使了,苹果手机在没越狱的状况下是无法修改hosts
的,难道为了这个让本身的爱机越个狱?答案应该是否认的。那么怎么处理这个问题呢?完美解决方案就是配置本地局域网的DNS服务。因而我就查询了一系列的文档文章,总结出这篇文章,踩过些许坑,但愿后来人别在重复踩了,因为本人使用的是Mac,因此下面的一些命令亲和Mac党,其余系统也相似,只有写系统命令可能不一样,废话很少说,君且详看:前端
brew update; brew install dnsmasq;
sudo brew services start dnsmasq
sudo brew services restart dnsmasq
sudo brew services stop dnsmasq
ps aux | grep dnsmasq
/usr/local/opt/dnsmasq/sbin/dnsmasq --keep-in-foreground -C /usr/local/etc/dnsmasq.conf
/usr/local/etc/dnsmasq.conf
sudo vim /usr/local/etc/dnsmasq.conf
干下面这些事情,去掉如下注释,并修改,具体配置是干啥的,后面会有讲到:nginx
no-resolv no-poll listen-address=127.0.0.1,172.17.7.115 addn-hosts=/etc/dnsmasq.hosts
sudo vim /etc/dnsmasq.hosts
里面添加你须要填写的域名对应关系,如:sql
172.17.7.115 yongle.smartstudy.com
重启下你的DNS服务器,启动代码在文章上面有说到,截至目前,你的Mac本地的DNS配置就OK了,可是让同局域网的其余设备使用的话,还须要一些操做。vim
配置DNS服务器
172.17.7.115
备用DNS配置为通常经常使用DNS服务器就行了。cookie
局域网内设备需重连WIFI,然后就可使用你本地的DNS服务了,检测是否成功,可使用dig
命令,如你本机上可这么来:spa
dig yongle.smartstudy.com @127.0.0.1
当你看到rest
yongle.smartstudy.com. 0 IN A 172.17.7.115
说明成功了,这时候应该就结束了,但若还有局域网内的设备连不上的话,能够查看下该设备的DNS是否含有172.17.7.115
,若没有,重启wifi链接,就OK了。code