这种方案最终能达到怎样的效果?
- 手机可以访问内网的测试服务器,而不需要更改hosts
- 对于通过域名引用css/js资源的网站(如:qunarzz.com)则更有福了。将qunarzz.com指向本机,可以在本机修改直接在移动设备上查看效果。
###这个方案原理是什么?###
使用代理,连接代理服务器,修改代理服务器的hosts文件以连接网页服务器。对于移动设备是透明的(除了设置代理)。
###具体搭建步骤###macbook + squid + WIFI
移动设备连接WIFI并设置代理,保证移动设备和代理服务器在同一局域网
1. 通过homebrew安装squid
2. 修改配置文件/usr/local/etc/squid.conf
主要需要注意以下三点,其它acl都去掉,允许所有1
2
3
4
5
6 允许所有客户端使用代理
http_access allow all
Squid normally listens to port 3128
http_port 3128
添加这一行,让squid读取本地hosts文件
hosts_file /etc/hosts
3. 启动squid
1 | localhost:~ luckyxutao$ /usr/local/Cellar/squid/3.3.11/sbin/squid start |
4.修改hosts后需要重新读取配置文件
1 | localhost:~ luckyxutao$ /usr/local/Cellar/squid/3.3.11/sbin/squid -k reconfig |
5. 配置移动设备
我的是直接配置wifi的代理,将代理服务器设置为搭建squid的ip,端口默认3128
mac共享热点,可将频道设置为1、2、3,过大的时候我这失败了(原因不明)
一般是不需要浏览器设置啥的,如果使用chrome需要把省流量关闭