【公网远程手机Android服务器】安卓Termux搭建Web服务器

目录

概述

1.搭建apache

2.安装cpolar内网穿透

3.公网访问配置

4.固定公网地址

5.添加站点


概述

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

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

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

1.搭建apache

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

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell">pkg <span style="color:#e6db74">install</span> apache2
</code></span></span></span></span>

然后启动apache

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell">apachectl start
</code></span></span></span></span>

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

image-20230510150038202

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

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell">pkg <span style="color:#e6db74">install</span> <span style="color:#e6db74">vim</span>
</code></span></span></span></span>

编辑修改配置文件

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell"><span style="color:#e6db74">vim</span> <span style="color:#f8f8f2">$PREFIX</span>/etc/apache2/httpd.conf
</code></span></span></span></span>

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

image-20230510151133736

修改后再次启动,即可

image-20230510151344686

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

image-20230510151540948

停止apache

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell">apachectl stop
</code></span></span></span></span>

重启apache

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell">apachectl restart
</code></span></span></span></span>

2.安装cpolar内网穿透

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

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

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

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

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell"><span style="color:#e6db74">mkdir</span> -p <span style="color:#f8f8f2">$PREFIX</span>/etc/apt/sources.list.d
</code></span></span></span></span>

添加cpolar下载源文件

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell"><span style="color:#e6db74">echo</span> <span style="color:#a6e22e">"deb [trusted=yes] http://termux.cpolar.com termux extras"</span> <span style="color:#f8f8f2">>></span> <span style="color:#f8f8f2">$PREFIX</span>/etc/apt/sources.list.d/cpolar.list
</code></span></span></span></span>

更新仓库

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell">pkg update
</code></span></span></span></span>

安装cpolar

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell">pkg <span style="color:#e6db74">install</span> cpolar
</code></span></span></span></span>

安装termux服务

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

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell">pkg <span style="color:#e6db74">install</span> termux-services
</code></span></span></span></span>

重启完termux后,然后启动cpolar

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell">sv up cpolar
</code></span></span></span></span>

设置开机自启

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell">sv-enable cpolar
</code></span></span></span></span>

这个是停止cpola服务

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell">sv down cpolar
</code></span></span></span></span>

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

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell"><span style="color:#f8f8f2">$PREFIX</span>/etc/cpolar/cpolar.yml
</code></span></span></span></span>

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

image-20230509155942139

3.公网访问配置

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

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

点击创建

image-20230510153916787

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

image-20230510155122769

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

image-20230510163512036

4.固定公网地址

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

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

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

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

image-20230510171738839

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

image-20230510171806128

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

image-20230510171929758

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

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

修改完成后,点击更新

image-20230510172124742

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

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

image-20230510172352811

5.添加站点

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

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell"><span style="color:#e6db74">cd</span> <span style="color:#f8f8f2">$PREFIX</span>/share/apache2/default-site/htdocs
</code></span></span></span></span>

安装下载工具wget

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell">pkg <span style="color:#e6db74">install</span> <span style="color:#e6db74">wget</span>
</code></span></span></span></span>

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

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell"><span style="color:#e6db74">wget</span> https://www.cpolar.com/static/downloads/meditation-app-master.tar.gz
</code></span></span></span></span>

下载好后解压

<span style="color:#444444"><span style="background-color:#ffffff"><span style="background-color:#272822"><span style="color:#f8f8f2"><code class="language-shell"><span style="color:#e6db74">tar</span> xzf meditation-app-master.tar.gz
</code></span></span></span></span>

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/127776.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

springWeb

springweb就是spring框架中的一个模块&#xff0c;对web层进行了封装&#xff0c;使用起来更加方便。如何方便&#xff1f;参数接收框架进行封装 SpringWeb拥有控制器&#xff0c;接收外部请求&#xff0c;解析参数传给服务层。 SpringWeb运行流程 用户发起请求 ip:端口/项目名…

晶尔忠产业集团全面启动暨表彰大会

八月下旬&#xff0c;三伏已尽&#xff0c;初秋遂至。夏日的余热还没有完全散去&#xff0c;初秋的热浪随之席卷而来&#xff0c;大地依旧绿意盎然&#xff0c;万物正是生长最猛烈的时期&#xff0c;为秋天的收获做最后的冲刺&#xff0c;这是一个充满生机的时节&#xff0c;也…

设计模式之桥接模式、组合模式与享元模式

目录 桥接模式 简介 优缺点 结构 实现 运用场景 组合模式 简介 优缺点 结构 实现 运用场景 享元模式 简介 优缺点 结构 实现 运用场景 桥接模式 简介 将抽象与实现分离&#xff0c;使它们可以独立变化。它是用组合关系代替继承关系来实现&#xff0c;从而降…

基于springboot的图片文字识别,支持中英文识别

概述 基于springboot的图片文字识别,支持中英文识别. 页面上传图片即可转换为中文或者英文. 详细 1.需求&#xff08;要做什么&#xff09; 识别图片文字, 实现页面上传图片即可转换为中文或者英文. 2.理论概述 OCR&#xff0c;即Optical Character Recognition&#xff…

数据结构与算法:概述

目录 算法 评价标准 时间的复杂度 概念 推导原则 举例 空间的复杂度 定义 情形 运用场景 数据结构 组成方式 算法 在数学领域&#xff0c;算法是解决某一类问题的公式和思想&#xff1b; 计算机科学领域&#xff0c;是指一系列程序指令&#xff0c;用于解决特定的…

数据结构插入排序

好久不见&#xff0c;这几天有点事情&#xff0c;都快一个礼拜没有学习&#xff0c;对键盘都要陌生起来了&#xff0c;今天也是刚刚学了一点排序&#xff0c;在这里也给大家更新一个插入排序&#xff0c;后面也会渐渐的把八大排序更新完的&#xff0c;还有就是二叉树&#xff0…

Vivado 2017.04版本安装教程

文章目录 前言一、vivado 简介二、vivado 下载三、vivado 安装四、vivado 申请证书五、关闭升级提醒六、资源自取 前言 本文记录了在 windows 11 下安装 vivado 2017 的详细步骤。 一、vivado 简介 Vivado 是 Xilinx 公司于 2012 推出的新一代集成设计环境&#xff0c;虽然目…

学习笔记|定时器|STC中断|定时器时间计算|STC32G单片机视频开发教程(冲哥)|第十一集:定时器的作用和意义

文章目录 1.定时器的作用和意义定时器中断定时器是定时器和计数器的统称。 2.STC32G单片机定时器使用原理2.1 先设置功能为定时器/计数器(本质都是加法计数器)2.2、在定时器模式下&#xff0c;设置不分频或者12分频∶Tips&#xff1a;选择不分频还是12分频2.3、定时器的工作模式…

算法竞赛个人注意事项

浅浅记录一下自己在算法竞赛中的注意事项。 数据类 注意看数大小&#xff0c;数学库中的函数尽量加上 * 1.0&#xff0c;转成double&#xff0c;防止整型溢出。&#xff0c;int型相乘如果可能溢出&#xff0c;乘 * 1LL。 数据范围大于1e6&#xff0c;注意用快读。 浮点数输…

HCIP自我重修总笔记

第一章.复习OSITCP/IP 模型 &#xff08;2023 9/5&#xff09; OSI 模型: 开放式系统互联参考模型 应用层&#xff1a;抽象语言-->编码表示层&#xff1a;编码--->二进制会话层&#xff1a;提供会话地址&#xff0c;建立应用程序端到端的会话 上三层为应用程序对数据加…

初识Python

初识Python Python背景知识1. 编程语言2. Python优缺点 搭建Python环境1.找到官网2. 下载3.安装4.检查 安装PyCharm1.找到官网下载2. 安装3. 检查 Python官网文档学习 Python背景知识 1. 编程语言 编程语言通常可以分为以下三类&#xff1a; 高级语言&#xff08;High-Level…

PostgreSQL 查询修改max_connections(最大连接数)及其它配置

文章目录 查询max_connections(最大连接数)修改max_connections(最大连接数)其他配置 查询max_connections(最大连接数) SHOW max_connections;修改max_connections(最大连接数) 要设置PostgreSQL数据库的最大连接数&#xff0c;你需要修改数据库的配置文件 postgresql.conf。…

el-table中加图标文字提示

<el-table :data"tableData" style"width: 100%" max-height"250"><el-table-column fixed prop"aaa" label"日期" width"150" /><el-table-column prop"bbb" label"日期" wi…

【技能树笔记】网络篇——练习题解析(二)

目录 前言 一. 数据链路层的作用 1.1 数据链路层作用 1.2 数据链路层封装 1.3 数据链路层功能 1.4 数据帧格式 二. MAC地址及分类 2.1 MAC地址 2.2 MAC地址分类 三. 交换机的作用 3.1 交换机的作用 3.2 交换机作用 四.交换机的工作原理 4.1 交换机的工作原理 4.…

决策树算法学习笔记

一、决策树简介 首先决策树是一种有监督的机器学习算法&#xff0c;其采用的方法是自顶向下的递归方法&#xff0c;构建一颗树状结构的树&#xff0c;其具有分类和预测功能。其基本思想是以信息熵为度量构造一棵熵值下降最快的树&#xff0c;到叶子节点处的熵值为零。决策树的构…

MVC,MVP,MVVM的理解和区别

MVC MVC &#xff0c;早期的开发架构&#xff0c;在安卓里&#xff0c;用res代表V&#xff0c;activity代表Controller层&#xff0c;Model层完成数据请求&#xff0c;更新操作&#xff0c;activity完成view的绑定&#xff0c;以及业务逻辑的编写&#xff0c;更新view&#xf…

51单片机项目(9)——基于51单片机的电子琴设计

简易电子琴设计设计内容: 1.用矩阵键盘代表琴键&#xff0c;至少能弹出8个音符&#xff0c;分别是:音符1.23.4.,5,6, 2.键按下的时间长短表征节拍的长短&#xff0c;用蜂鸣器发出声音 3.数码管显示出当前音符 4.音量可调 &#xff08;代码及其工程文件放在最后&#xff09; …

pycharm使用

在使用pycharm时&#xff0c;有时一个回车或者一个tab键&#xff0c;缩进的长度不符合预期可以调整设置tab键缩进的长度&#xff1a; 平时工作中&#xff0c;不同的人在编辑代码缩进的时候&#xff0c;有的人喜欢按四个或者六个空格&#xff0c;有的人喜欢按tab键&#xff0c;而…

ostringstream 多线程下性能问题探究

文章目录 背景火焰图ostringstream 的结构引用 背景 在实习过程中&#xff0c;有一个业务场景需要用到 ostringstream&#xff0c;但经过导师提醒&#xff0c;ostringstream 在多线程关系下&#xff0c;竞态消耗较大&#xff0c;但对于当前业务场景&#xff0c;每次操作&#…

使用 Python 的高效相机流

一、说明 让我们谈谈在Python中使用网络摄像头。我有一个简单的任务&#xff0c;从相机读取帧&#xff0c;并在每一帧上运行神经网络。对于一个特定的网络摄像头&#xff0c;我在设置目标 fps 时遇到了问题&#xff08;正如我现在所理解的——因为相机可以用 mjpeg 格式运行 30…