目錄
序
使用Android手機實現Web服務器,其中包含如何安裝Apache HTTP Server以及如何使用Ngrok(Sunny)的服務反向代理。
方法一的嘗試:1. 安裝Apache HTTP Server
安裝Apache HTTP Server前,需要先安裝Termux 先從Google Play下載。
1.1 安裝Apache前准備
打開Termux后, 輸入
apt update
確保手機更新好源。
然后輸入
apt install apache2
之后再詢問中回答y即可安裝。
1.2 安裝完成后
安裝好之后 Termux的命令行會變成$, 如下
Setting up apache2 (2.4.41-3) ...
$
這個時候你只在$后需要輸入apachectl
$ apachectl
即可運行apache
需要注意的是,他會彈出
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using l127.0.0.1.
Set the 'ServerName' directive globally to suppress this message
這個問題暫時不用理他
1.3 瀏覽手機瀏覽器或通過電腦瀏覽
手機通過127.0.0.1:8080訪問
電腦通過路由器中手機的IP地址訪問
例如192.168.2.200:8080
只要出現It Works即可證明網頁服務器工作。
1.4 網頁服務器位置
輸入
$ cd ..
$ ls
之后會出現藍色字體
home usr
然后輸入
$ cd usr/share/apache2
$ ls
可以從這里看出藍色字體的文件夾是
default-site 而這個文件夾下面,也還有一個文件夾是叫htdocs
進入到htdocs文件夾之后,即可發現index.html
實際完整地址
/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版本 通過
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地址。