使用Android手机作为wifi web服务器

Wou*_*ter 5 android android-wifi

我有一个疯狂的想法,我不知道是否可能......我想要做的是将我的手机设置为wifi接入点,然后允许人们连接到它,但我自己处理所有传入的http流量.

所以:

  • 接入点模式下的手机wifi; 开放的wifi网络(这个花絮工作 - 是的,我知道它没有得到官方的支持,但后来我无意将这个应用程序分发到公开市场左右,它可以在我的手机上运行,​​这对我来说已经足够了).

  • 客户端可以连接到手机(例如我的笔记本电脑:这也有效).

  • 当客户端尝试打开与任何随机服务器的http连接时,必须由我的应用程序拦截并由本地Web服务器处理.这就是我坚持的观点.

Web服务器部分不应该太难; 有(开源)Web服务器可用.但是,获得流量到该Web服务器,存在问题.

我所追求的行为有点类似于连接到某个开放热点(如酒店热点)时所获得的行为,然后将您重定向到登录页面.这个拦截连接请求(我怀疑我必须查看DNS请求?)就是我所追求的.

我见过一个应用程序正在执行此操作,但它们需要手机才能生根.我希望能够找到一种方法来实现它,而无需根植电话.

小智 4

Wifi 热点通常会使用 IPTables 将端口 80/443 流量重定向到本地 Web 服务器。

我过去曾在Linux机器上在端口3128上运行squid,然后将所有端口80/443流量发送到squid。然后我使用鱿鱼将任何我没有明确允许的 URL 重定向到本地 Web 服务器。

不过,IPTables 只能在 root 的 Android 设备上访问。

我怀疑 Android 上有很多可用的代理服务器,因此您必须通过网络连接将 HTTP 流量发送到代理服务器。