安卓手机搭建简易WEB服务器
本文最后更新于 2024-10-16,文章内容距离上一次更新已经过去了很久啦,可能已经过时了,请谨慎参考喵。
title: 安卓手机搭建简易WEB服务器
tags:
- Android
- Nginx
- Termux
categories:
- Linux
top_img: false
cover: '/upload/cdn0files/20200721082840.jpg'
abbrlink: 69085f9e
date: 2020-01-14 17:40:55
updated: 2020-01-14 17:40:55
利用闲置安卓手机搭建本地测试环境或者低性能外网服务器
优缺点
首先我们要了解安卓手机的优势,有以下几点:
- 低功耗,全天24小时不间断开机也费不了多少电
- 稳定,很少因为意外宕机,就算宕机也能很快排查重启
- 性能高,一台四核多线程的云服务器的租金可是天价阿,但是一台四核甚至八核的手机就很便宜了吧(手动滑稽)
- 自带屏幕,方便操作,随身携带,超常待机,不怕突然断电
- 流量便宜
当然缺点也是非常之明显的:
- 需要额外安装大量环境,偶尔容器不稳定
- 如果需要更高级的操作就需要获取root权限,而当今社会root比登天都难,
如果你是VIVO那么还是少折腾,当个闹钟还是很不错的! - 最重要的就是需要做内网穿透,当然如果你是在局域网内玩玩就当我没说嘻嘻
准备工作
- 安卓手机一台(最好最好是root过的,就完美了)
- Termux终端
- 注册ngrok.cc并开通隧道
- 下载ngrok客户端(php/python任选其一就可)
安装Termux
termux可以去官网下载,百度一下就可以:https://github.com/termux/termux-app
安装之后就是这样的界面:
更换bash:
输入which bash
输出结果如果是/usr/bin/bash
结尾的那么就可以跳过这一步了,当然如果你喜欢其他比如zsh
、ash
的话可自行更换
输入chsh -s bash
即可,如果报错呢就执行pkg install bash
安装以一下就好了
编辑PS1
先安装最基本的VIM编辑器:pkg install vim
执行完毕即可
输入:
$ vim ../usr/etc/bash.bashrc
因为每个人手机的目录不尽相同,所以使用相对路径,所以保证此时工作目录在
~/
下,如果没有,请执行一次cd
回车
然后修改如下:
修改为个人喜好即可,但是为了方便,建议加上\w
和\u
选项,前者能显示当前工作目录路径,后者显示当先用户,编辑完之后执行:wq
保存退出。
安装nginx服务器
先执行一下更新:
$ apt update && apt upgrade
安装:
$ pkg install nginx
启动服务器
输入nginx
回车启动服务器
检查服务器状态
输入pkg install termux-tools
安装termux工具,安装完成之后执行ifconfig
查看本机IP或者可以去路由器管理界面查看ip
也因该能看到localhost是127.0.0.1
在手机浏览器地址栏输入127.0.0.1或者在与手机在同一局域网内的电脑上就可以看到如下:
如果127.0.0.1报错的话那么就是本机端口被改,试试127.0.0.1:8080,如果还报错,请检查nginx服务器的状态,重启试试
到这里,局域网内的服务器已经搭建完成,如何让不在此wifi下的其他小伙伴访问我们的服务器呢?这个时候就需要内网穿透了。
注册隧道
内网穿透一般都是通过公网服务器对内网ip进行映射,可自行选择服务商,这里以www.ngrok.cc为例。
首先需要注册账号,然后购买隧道,选用免费的即可,当然土豪请随意。
隧道的映射端口一定要填写本机的服务器端口,我的就是127.0.0.1:8080
开通好隧道之后来到隧道管理就会有一个隧道id和赠送域名,这个记下来,等会要用。
安装环境
Sunny-Ngork客户端下载:https://www.ngrok.cc/download.html
有php和python版本,根据自己喜好选择,两个安装方法一模一样,下面以php版本为例:
安装php
执行:
$ pkg install php
完毕后执行php -v
查看php版本
注意到了php (7.3.10-1),python同理
使用Sunny-Norgk
解压下载好的客户端,是一个sunny.php的可执行文件
执行:
$ php sunny.php
如果报错没有权限,执行chmod +x sunny.php
即可
执行完毕之后输入刚才获得的隧道id,等待链接服务器,链接成功之后就可以在公网输入获得的赠送域名就可以访问到本地的nginx了。
便宜没好货,免费的服务器链接很慢,多链接几遍就会成功的。