移动端测试的代理服务器搭建


背景

移动设备想要访问位于局域网中的某个特定设备上搭建的服务,需要通过代理服务器来实现,针对不同操作系统搭建代理服务器有不同的软件,如果系统是OSX的话,可以使用Charles,对于Windows,可以使用大名鼎鼎的Fiddler,可视化软件的使用这里不详述,本文重点讲述在Unix/Linux上使用Squid来搭建代理服务器。

本地环境的准备

通常我们需要测试的是某个设备上搭建的本地服务,那么至少要保证使用127.0.0.1是可以访问的,如果是配置了域名的虚拟主机也是同理,至少需要确保本地绑定Hosts可访问。

假如你的设备上有一个正在运行的inhvn,那么需要保证可以在设备上通过绑定127.0.0.1inhvn的hosts能正常访问到该服务。

快速的步骤概要

安装Squid

以CentOS为例,可以使用yum来安装。

$yuminstallsquid

其他linux系统有不同的软件来安装,否则可以选择编译的办法来安装。

配置Squid

使用yum安装好的Squid,默认的目录会是/usr/local/squid,默认的配置文件是/usr/local/squid/etc/squidonf。

编辑配置文件:

$vim/usr/local/squid/etc/squidonf

这里重点讲述几个重要的配置。

先增加一个本地server的acl访问规则的配置,然后配置本地server不做缓存,因为Squid默认会对所有访问请求做缓存,而本地测试服务不需要借助Squid来做缓存控制。

acllocalServersdst127.0.0.1#LocalServer

no_cachedenylocalServers#Denylocalservercache

当Squid找不到本地所运行的主机名时可能会报如下错误:

所以最好提前设置一个可见主机名,以免发生错误,该可见主机名可以在本地单独配置一个xxx的虚拟主机(记得绑定hosts)而专用于Squid。 

visible_hostnamexxx

配置允许所有HTTP的访问

http_accessallowall

配置代理端口,默认端口是3128,可以修改成你想要的任意端口。 

http_port8411

配置log文件路径,cache.log和access.log,并确保该文件有可写权限。

cache_log/var/log/squid/cache.log

cache_access_log/var/log/squid/access.log

到这里主要的配置都完成了,可以启动Squid了。

$/usr/local/squid/sbin/squid

如果修改了配置文件,需要停止Squid然后再启动,安全的办法是使用自带的命令。

$/usr/local/squid/sbin/squidkshutdown

由于Squid的access.log会记录每一条访问日志,一定时间后该日至会非常庞大,所以需要定时清理,可以设置一个定制任务来清理该文件。

使用crontab来增加一条定时任务。

$crontabe

在打开的文件中新增一条记录,这条记录会每天0点的时候将访问日志清空。

00***/usr/local/squid/sbin/squidkshutdown

30***echo>/var/log/squid/access.log

50***/usr/local/squid/sbin/squid

如果你觉得这种办法太简单粗暴,可以使用Squid自带的滚动日至的功能

$/usr/local/squid/sbin/squidkrotate

Squid是一个很强大的开源软件,可以用于搭建代理服务器,还可以作为大型站点的WEB加速器,想更详细的了解可以查看Squid权威指南。

移动设备如何访问代理服务器?

代理服务器搭建好后,移动端设备想要访问代理服务器,在Wifi的HTTP代理设置中填入代理服务器的IP和Squid配置的代理端口,就可以正常访问代理服务器上的inhvn。


上一篇:直播行业选择高防CDN还是高防服务器?

下一篇:国内游戏出海首选香港服务器租用


Copyright © 2002-2019 测速网 www.inhv.cn 皖ICP备2023010105号
测速城市 测速地区 测速街道 网速测试城市 网速测试地区 网速测试街道
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!

热门搜索 城市网站建设 地区网站制作 街道网页设计 大写数字 热点城市 热点地区 热点街道 热点时间 房贷计算器