使用Android手机实现Web服务器 - 内网穿透
序
使用Android手机实现Web服务器,其中包含如何安装Apache HTTP Server以及如何使用Ngrok(Sunny)的服务反向代理。
方法一的尝试:1. 安装Apache HTTP Server
安装Apache HTTP Server前,需要先安装Termux
先从Google Play下载。
1.1 安装Apache前准备
打开Termux后,
输入
1 | apt update |
确保手机更新好源。
然后输入
1 | apt install apache2 |
之后再询问中回答y即可安装。
1.2 安装完成后
安装好之后
Termux的命令行会变成$, 如下
1 | Setting up apache2 (2.4.41-3) ... |
这个时候你只在$后需要输入apachectl
1 | $ apachectl |
即可运行apache
需要注意的是,他会弹出
1 | AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using l127.0.0.1. |
这个问题暂时不用理他
1.3 浏览手机浏览器或通过电脑浏览
手机通过127.0.0.1:8080访问
电脑通过路由器中手机的IP地址访问
例如192.168.2.200:8080
只要出现It Works即可证明网页服务器工作。
1.4 网页服务器位置
输入
1 | $ cd .. |
之后会出现蓝色字体
1 | home usr |
然后输入
1 | $ cd usr/share/apache2 |
可以从这里看出蓝色字体的文件夹是
default-site
而这个文件夹下面,也还有一个文件夹是叫htdocs
进入到htdocs文件夹之后,即可发现index.html
实际完整地址
1 | /data/data/com.termux/files/usr/share/apache2/default-site/htdocs/ |
另外需要注意的是当Termux被关闭后,apachectl也会被关闭。
把Apache默认网页位置修改到SD卡
暂无解决方案
代替方案KSWEB和谐版
KSWEB和谐版下载地址
ngrok sunny内网穿透
注册sunny的ngrok并生成clientid.
然后下载sunny的ngrok的python版本
通过
1 | pkg install python |
安装
具体安装步骤可以查看
http://www.ngrok.cc/_book/start/ngrok_android.html
但是我后来发现需要root才可以运行python
于是在termux里面运行apt install tsu
通过tsu命令得到root
最后我发现,由于这个免费服务器是海外的,IP被封了。
用不了。(测试,打开VPN后可以用,但是这等于没用。)
方法二 花生壳实现内网穿透
因为ngrok内网穿透方案看过之后,类似的内网穿透方案例如frp,lanproxy等原理都相似。
都需要一台VPS运转,且若包含了免费VPS给你用的话,也是在海外,一样有带宽限制。
如果有VPS的话, 这个配置我还不如直接vps装面板,还能支持多个网站。
所以,回归到花生壳也是必须只能这样。花生壳的免费服务器是上海的,不会担心IP封。
花生壳改变了很多,无法进行域名解析了,只能先用电脑端打开花生壳超过1个小时,耐心等待花生壳的DNS自动修改IP为新的IP。
设置好各个端口之后,去DNS服务商设置CNAME为你的花生壳二级域名即可。
需要注意的是,如果你采用了企业邮箱,你的CNAME就无法直接用@的形式,必须是www
不过,你也可以增加A解析到你CNAME的IP地址。
- 标题: 使用Android手机实现Web服务器 - 内网穿透
- 作者: 暗香疏影
- 创建于 : 2020-02-25 00:00:00
- 更新于 : 2020-02-25 00:00:00
- 链接: https://blog.23ikr.com/2020/02/25/2020-02-25-Android-Web-Server-ngrok/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。