闲置旧手机搭建服务器?在安卓手机上使用Termux搭建web服务「公网远程访问」

文章目录

概述

Termux是一个Android终端仿真应用程序,用于在 Android 手机上搭建一个完整的Linux 环境,能够实现Linux下的许多基本操作,不需要root权限Termux就可以正常运行。

Apache是一个开源网页服务器软件,由于其跨平台和安全性,被广泛使用,是最流行的 Web 服务器软件之一。我们可以在Android手机上使用Termux来搭建Web服务器,同时做内网穿透,实现公网用户也可以访问,将Android变成小型的云服务器。

下面介绍在安卓Termux上搭建apache服务创建个人站点并且结合cpolar内网穿透工具实现公网访问。

1.搭建apache

执行命令安装apache,安装相对简单,一键安装即可

shell 复制代码
pkg install apache2

然后启动apache

shell 复制代码
apachectl start

启动的时候如出现以下问题

解决方法,修改配置文件,如果没有安装vim,执行命令安装一下

shell 复制代码
pkg install vim

编辑修改配置文件

shell 复制代码
vim $PREFIX/etc/apache2/httpd.conf

找到ServerName解开注释,www.example.com改为127.0.0.1:8080,端口号可以自己改成自己喜欢的

修改后再次启动,即可

打开浏览器,输入http://127.0.0.1:8080,即可看到apahe欢迎页面,

停止apache

shell 复制代码
apachectl stop

重启apache

shell 复制代码
apachectl restart

2.安装cpolar内网穿透

cpolar官网:https://www.cpolar.com

成功创建了运行站点的一个apache容器后,我们接下来用cpolar做内网穿透来实现公网环境下的访问。

cpolar它是一个安全的内网穿透云服务,支持http/https/tcp协议,可以永久免费使用还不限制流量,支持映射80/443端口。它可以通过创建安全隧道,将本地服务暴露到公网上,让公网用户也可以正常访问内网服务,不需要公网IP,也不用设置路由器。

创建一个sources.list.d的文件夹:

shell 复制代码
mkdir -p $PREFIX/etc/apt/sources.list.d

添加cpolar下载源文件

shell 复制代码
echo "deb [trusted=yes] http://termux.cpolar.com termux extras" >> $PREFIX/etc/apt/sources.list.d/cpolar.list

更新仓库

shell 复制代码
pkg update

安装cpolar

shell 复制代码
pkg install cpolar

安装termux服务

注意:安装完成后记得关闭重启一下termux 才生效!!

shell 复制代码
pkg install termux-services

重启完termux后,然后启动cpolar

shell 复制代码
sv up cpolar

设置开机自启

shell 复制代码
sv-enable cpolar

这个是停止cpola服务

shell 复制代码
sv down cpolar

cpolar.yml主配置文件路径位置

shell 复制代码
$PREFIX/etc/cpolar/cpolar.yml

然后在手机浏览器我们输入http://localhost:9200即可看到cpolar管理界面,使用在cpolar官网注册的邮箱账号即可登陆

3.公网访问配置

手机浏览器打开cpolar web ui管理界面,我们点击左侧仪表盘的隧道管理------创建隧道,由于apache上面我们修改配置文件是8080端口(文章是8080,具体端口号以自己的端口为准),因此我们要来创建一条http隧道,指向8080端口:

  • 隧道名称:可自定义,注意不要重复
  • 协议:http
  • 本地地址:8080
  • 域名类型:选择随机域名
  • 地区:选择China VIP

点击创建

创建成功后打开在线隧道列表,可以看到公网访问的地址,有两种访问方式,一种是http,一种是https

我们使用http方式,在浏览器输入公网地址,即可访问成功

4.固定公网地址

由于上面创建的是免费随机隧道,所生成的公网地址会在24小时内随机变化,为了方便长久稳定连接,我们可以固定这个公网地址,配置一个cpolar固定的二级子域名【无需备案】,或者也可以配置使用你自己的域名来访问,这里我们以配置固定的二级子域名来举例。

需升级至基础套餐或以上才支持配置二级子域名

登录cpolar官网后台,点击左侧仪表盘的预留,找到保留二级子域名,为http隧道保留一个二级子域名。

  • 地区:选择服务器地区
  • 名称:填写您想要保留的二级子域名(可自定义)
  • 描述:即备注,可自定义填写

本例保留一个名称为mywebsitetest的二级子域名。子域名保留成功后,我们将子域名复制下来,接下来需要将其配置到隧道中去。

登录cpolar web ui管理界面,点击左侧仪表盘的隧道管理------隧道列表,找到需要配置二级子域名的隧道,点击右侧的编辑

修改隧道信息,将二级子域名配置到隧道中:

  • 域名类型:改为选择二级子域名
  • Sub Domain:填写我们刚刚所保留的二级子域名(本例为mywebsitetest

修改完成后,点击更新

隧道更新成功后,点击左侧仪表盘的状态------在线隧道列表,可以看到隧道的公网地址,已经更新为二级子域名了.

固定后我们使用固定的公网地址,在浏览器中打开,即可看到apache默认页面,这样一个固定的公网地址访问就设置好了

5.添加站点

上面我们访问的页面是apache默认页面,不是我们希望的页面,我们可以把自己喜欢的页面放上去,进入apache htdocs文件夹

shell 复制代码
cd $PREFIX/share/apache2/default-site/htdocs

安装下载工具wget

shell 复制代码
pkg install wget

这里做演示,我们下载一个测试站点

shell 复制代码
wget https://www.cpolar.com/static/downloads/meditation-app-master.tar.gz

下载好后解压

shell 复制代码
tar xzf meditation-app-master.tar.gz

然后我们在浏览器上面输入上面我们的公网地址加上资源路径/meditation-app-master/index.html,就可看到我们的个人站点啦。

现在只要保持隧道为正常在线状态,公网用户就可以通过这个固定公网地址来访问到我们在termux上搭建的web站点。

相关推荐
mahuifa几秒前
python实现usb热插拔检测(linux)
linux·服务器·python
yzx99101336 分钟前
支持向量机案例
算法·机器学习·支持向量机
鸿蒙布道师4 小时前
鸿蒙NEXT开发动画案例5
android·ios·华为·harmonyos·鸿蒙系统·arkui·huawei
π大星星️4 小时前
基于LNMP架构的个人博客系统部署
服务器·架构
橙子199110169 小时前
在 Kotlin 中什么是委托属性,简要说说其使用场景和原理
android·开发语言·kotlin
androidwork9 小时前
Kotlin Android LeakCanary内存泄漏检测实战
android·开发语言·kotlin
IT古董10 小时前
【漫话机器学习系列】249.Word2Vec自然语言训练模型
机器学习·自然语言处理·word2vec
菜菜why10 小时前
AutoDL租用服务器教程
服务器
IT专业服务商10 小时前
联想 SR550 服务器,配置 RAID 5教程!
运维·服务器·windows·microsoft·硬件架构
笨鸭先游10 小时前
Android Studio的jks文件
android·ide·android studio