目录
引言
你是否渴望拥有一台属于自己的服务器?你是否因为贫穷而阻止了你购买服务器的脚步?看这里!看这里!这里会教你如何使用废旧手机建立一个自己的服务器。
众所周知,安卓手机的系统是Linux系统开发而来,也就是说,其内核是Linux,这就给我们很大的机会。接下来将会使用termux终端
,ksweb
来搭建服务器并且全网可用;使用phpAdmin
进行MySQl数据库的连接,以及个人博客的简单搭建
环境搭建及数据库的连接
搭建手机服务器环境
浏览器下载ksweb
我这里添加了两个端口
完成后自己手机端访问http://localhost:8080
电脑端访问htttp://[手机上显示的ip]:8080
Tips:wifi标志说明是同一局域网,另一个是公网ip
不同局域网进行访问
以上的地址只能在同一局域网内进行访问,要想让其他人访问就需要和你服务器在同一局域网内,但是这并不是我们的初衷,所以就需要用到内网穿透,用内网IP映射到公网上。
建立隧道,进行内网穿透
先去这个地址注册一下
Sunny-Ngrok内网转发内网穿透 - 国内内网映射服务器
需要花费2¥用于实名认证
方面后面做内网穿透建立隧道
可以先去这里面看看教程教程
注册好后点击开通隧道
选择http协议就行,前置域名自己写一个就行,有自己专门的域名。
建立好后,来到隧道管理
- 隧道id一会是需要使用的
- 赠送域名就是你的公网域名
安卓机安装python环境
手机下载termux
如果找不到下载地址,可以去这个Releases · termux/termux-app (github.com)下载对应的版本,我下载的版本是arm64。
下载好后,拖入手机文件中,点击下载apk文件,等待下载完成。
安装后输入
pkg install python
等待安装完成
安装成功后会显示success字样
如果下载很慢,可以试试换源下载,自行上网搜索python换源等关键字
termux终端访问文件权限
手机app只会访问自己的资源,不会访问手机端的所有资源,所以我们需要开启一下访问权限,在termux中输入
termux-setup-storage
按照他给的提示,确认即可。
运行程序
回到sunny-nrgok
的网站,下载python版本的客户端Sunny-Ngro客户端
先输入ls -a
显示所有文件,通过cd命令一个个进去直到找到sunny.py
文件
在termux中运行以下命令:cd /storage/emulated/0/Download
将下载好的sunny.py
拖入该文件夹中即可,运行python sunny.py
- clientid就是隧道id
具体流程可以参考这里Android · Sunny-Ngrok说明文档
出现的问题
cd文件后显示无法找到该文件
如果cd命令出错,建议一步一步cd到根目录上,也就是一直执行cd ..
命令,在继续执行上方的cd命名,若还不能一步到位,还是推荐一步一步cd下去,即cd storage
cd emluated
……
运行sunny.py后报错
我设备上运行sunny.py文件后报错
ImportError:dlopen failed:library "libssl.so.3"not found
说明没有对应的库,这时候需要安装,运行
pkg install openssl-tool
安装对应的libssl.so.3库
等待安装完成,继续执行sunny.py文件
实现MySQL数据库的连接
这里用到一个软件做辅助phpMyAidmin
官网在这phpMyAdmin
有时候官网下载过慢(我就是饱受官网下载速度过慢,十几MB的压缩包,硬生生给我说网络错误),可以去浏览器自行搜索下载
下载好后,先找到config.sample.inc.config
文件,复制一份,在同级目录下粘贴。找到以下代码
/**
* This is needed for cookie based authentication to encrypt password in
* cookie. Needs to be 32 chars long.
*/
$cfg['blowfish_secret'] = ''; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
/**
* Servers configuration
*/
$i = 0;
/**
* First server
*/
$i++;
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
/* Server parameters */
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['AllowNoPassword'] = false;
将上述代码做以下修改
/**
* This is needed for cookie based authentication to encrypt password in
* cookie. Needs to be 32 chars long.
*/
// 修改内容
$cfg['blowfish_secret'] = 'jldlisdjgvhsgdisdgfugdsuiphasjdbashgfsoudgasgb'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
/*解释下,就是输入很长一段字符串就行,随便输*/
/**
* Servers configuration
*/
$i = 0;
/**
* First server
*/
$i++;
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
// 修改内容
/*添加用户名(user)和密码(password)*/
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
/* Server parameters */
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['compress'] = false;
/*是否开启无密码验证*/
$cfg['Servers'][$i]['AllowNoPassword'] = true;
用数据线将电脑和手机相连,将解压好后的文件夹直接拖入到/ksweb/tools
中。
有人会说,为什么不直接在ksweb里下,我是一直卡进度,你们可以试试,万一成了呢!
完成后,在LIGHTTPD
里新建主机,我这里是将主机端口设置为8001,主机地址就是你phpMyAidmin
所在的文件位置
完成后,电脑访问http://[ip]:[端口]
(我这里是【IP】:8001)
出现以下界面说明成功
个人博客简单搭建
使用typeecho搭建个人博客网页
点击下方链接
下载 - Typecho Official Site
下载后解压,拖入手机中htdocs
文件中,这个文件就是你访问8080端口的页面
还是进入开始说的哪个网址,按照他的提示一步步完成即可。
全部完成后,会出现以下界面
后面也可以自己做一个个人博客页面放入typecho目录中
这里不过多赘述,本人目前没有建立博客系统的打算,所以只是做了了解
总结
自己搭建的服务器,在防攻击和大流量访问时,都不如阿里云等厂商提供的服务器的。
另外,个人搭建的服务器高度就是看你旧手机性能的高度了。
对于问题解释,我只是罗列了我遇到的问题,可能你不会遇到,也希望你不会遇到,如果遇到了其他问题,多多去搜索,玩电脑最重要的就是学会如何更高效的找到自己想要的答案。
以上便是手机搭建简单服务器的所有步骤,愿各位都会有一台属于自己的服务器