前言
书接上文,本文给一个思路,使用termux运行nodejs搭建一个比较简单的本地http服务器。
nodejs安装
termux无需root,安装后立刻就可以使用,通过简单的设置安装源,在国内的网络环境使用更加顺畅,而nodejs的安装与普通的debian系列的发行版没有什么区别。
apt install nodejs注意执行前最好是修改安装源,然后更新本地缓存。安装完成之后就可以写一个简单的测试脚本测试环境是否能正常运行。
echo "console.log('hello world');" > test.js
node test.js如果正常的执行,能够看到hello world,则说明已经完成了安装。
python运行
大部分的Linux发行版与python脚本语言的结合都相当紧密,除了因为体积、性能无法承载的例如主要用于路由器这种低端硬件的嵌入式发行版系统,一般都是自带python运行环境的。通过一个简单的命令,就可以通过python直接运行一个http服务器。
apt install python
python -m http.server 8080此处需要额外指定端口,不能忽略最后的参数端口号。端口号应该在1025-65535,如果没有获取root的默认情况。如果已经获取了root权限,则可以正常在低位端口直接运行。
在docker镜像的体积上,ubuntu、debian这类的标准镜像只有不足100M,而红帽系的一般都有两三百兆,在释放后体积更巨大,就是因为默认附带的软件包不同。比较小的镜像可能不仅wget这类的工具没有默认安装,甚至连许多很常用的软件都是不提供的,纯粹作为运行环境提供。termux的安装包体积也相当小巧,在安装完毕之后的体积占用对于一般的手机也没有太大的压力,所以自带的软件包也一样是相当少的。python常用的pip,以及虚拟环境这类的包都是需要额外安装的,在依赖的检查上比普通系统更为必要。
通过这样的http服务,也可以简单的http方式分享手机特定目录的文件,也可以执行动态脚本按需产生动态web应用。通过termux,在手机调试测试python相当简单。测试了一些python的web应用程序都是可以直接部署使用的,即使是使用了Django、Flask这类的框架开发的程序,类似的还有ruby,甚至是asp也有方法运行,简单的一些asp.net也可以通过mono执行。
http服务
通过python可以运行http应用,nodejs也可以通过npm安装http-server,直接运行脚本提供http服务可能会不够稳定,或者比较占用资源,同时为了扩展单个站点的丰富程度,可以使用标准的HTTP服务器程序进行反代,更优雅的对外发布服务。
安装方法类似普通的debian发行版环境安装http服务器,可以选择apache2,也可以选择nginx,还有许多的更加mini的,或者extra版本的nginx或者一些体积非常小巧功能简单的http服务器软件可以选择。
















