说明

  • 安卓设备通过Termux搭建本地web环境
  • 需求:在手机中部署网站实现无网络本地访问;
  • 环境:Windows+雷电模拟器+Android7

操作

  • Windows环境安装雷电模拟器(xx版自行搜索),雷电模拟器默认运行Android7环境;
  • 下载Termux软件安装包(需要梯子):https://f-droid.org/packages/com.termux
  • 在手机中安装Termux;
  • 在Termux中进行复制粘贴

    • 在外部复制好需要运行的命令,到Termux中长按弹出“COPY PASTE MORE...”,点击PASTE进行粘贴;
  • Termux基本命令

    • 除了支持apt命令外,还在此基础上封装了pkg命令,pkg命令向下兼容apt命令。apt命令大家应该都比较熟悉了,这里直接简单的介绍下pkg命令;

      pkg search <query>              # 搜索包
      pkg install <package>           # 安装包
      pkg uninstall <package>         # 卸载包
      pkg reinstall <package>         # 重新安装包
      pkg update                      # 更新源
      pkg upgrade                     # 升级软件包
      pkg list-all                    # 列出可供安装的所有包
      pkg list-installed              # 列出已经安装的包
      pkg show <package>              # 显示某个包的详细信息
      pkg files <package>             # 显示某个包的相关文件夹路径
  • 常用环境变量和目录结构

    echo $HOME
    /data/data/com.termux/files/home
    
    echo $PREFIX
    /data/data/com.termux/files/usr
    
    echo $TMPPREFIX
    /data/data/com.termux/files/usr/tmp/zsh
  • 端口查看

    • Android10以下:netstat -annetstat -an | grep 3306...
  • 安装基础依赖:pkg install vim curl wget git tree -y
  • 更改终端配色方案(会自动激活SD卡外置存储)

    • 有梯子执行:sh -c "$(curl -fsSL https://github.com/Cabbagec/termux-ohmyzsh/raw/master/install.sh)"
    • 没有梯子执行:sh -c "$(curl -fsSL https://html.sqlsec.com/termux-install.sh)"
    • 弹出授权Termux访问文件的弹窗选择“始终允许”
    • 手机App默认只能访问自己的数据,如果要访问手机的存储,需要请求权限,如果你刚刚不小心点了拒绝的话,那么可以执行以下命令来重新获取访问权限:termux-setup-storage
    • 如果安装最后显示XXX文件不存在,让你重启Termux,那就重启一次,再执行一次安装命令
    • 脚本允许后先后有如下两个选项:

      Enter a number, leave blank to not to change: 22
      Enter a number, leave blank to not to change: 6
      • 分别选择色彩样式和字体样式,重启 Termux app 后生效配置。不满意刚刚的效果,想要继续更改配色方案的话,可以根据下面命令来更改对应的色彩配色方案:

        • 更改颜色:chcolor
        • 更改字体:chfont
  • 创建目录软连接

    • 执行过上面的配色方案脚本后,并且授予Termux文件访问权限的话,会在家目录生成storage目录,并且生成若干目录,软连接都指向外置存储卡的相应目录:

      % pwd
      /data/data/com.termux/files/home/storage
      % ls -al
      total 8
      drwx------ 2 u0_a33 u0_a33 4096 Jul 28 15:53 .
      drwx------ 8 u0_a33 u0_a33 4096 Jul 28 15:54 ..
      lrwxrwxrwx 1 u0_a33 u0_a33   24 Jul 28 15:53 dcim -> /storage/emulated/0/DCIM
      lrwxrwxrwx 1 u0_a33 u0_a33   28 Jul 28 15:53 downloads -> /storage/emulated/0/Download
      lrwxrwxrwx 1 u0_a33 u0_a33   26 Jul 28 15:53 movies -> /storage/emulated/0/Movies
      lrwxrwxrwx 1 u0_a33 u0_a33   25 Jul 28 15:53 music -> /storage/emulated/0/Music
      lrwxrwxrwx 1 u0_a33 u0_a33   28 Jul 28 15:53 pictures -> /storage/emulated/0/Pictures
      lrwxrwxrwx 1 u0_a33 u0_a33   19 Jul 28 15:53 shared -> /storage/emulated/0
    • 最后一个shared目录就是手机存储sdcard目录了,在手机文件夹管理中创建网站目录并上传网站代码,比如:/storage/emulated/0/www/test.com
  • 安装NGINX

    • 安装:pkg install nginx
    • 查看:nginx -v

      • 报错:CANNOT LINK EXECUTABLE "nginx": library "libssl.so.3" not foundAborted

        • 说明:该错误是因为你本地环境的一些基础依赖过于陈旧;
        • 解决:pkg update,根据提示全部选y进行更新版本;
    • 启动:nginx
    • 重启:nginx -s reload
    • 停止:nginx -s stopnginx -s quit
  • NGINX搭建网站

    • 先切换到NGINX程序目录:cd $PREFIX/etc/nginx;
    • 增加vhosts目录:mkdir vhosts
    • 加入第一个网站配置:

      • 拷贝一个配置文:cp nginx.conf vhosts/
      • 切换到配置文件目录:cd vhosts
      • 重命名配置文件:mv nginx.conf test.conf
      • 修改配置文件,删除无用配置行,最终网站配置文件内容:

        server {
            listen       8081;
            server_name  test.com;
        
            location / {
                root   /data/data/com.termux/files/home/storage/shared/www/test.com;
                index  index.html index.htm;
            }
        }
    • 重启NGINX:nginx -s reload
    • 访问测试:http://127.0.0.1:8081

标签: 安卓, web服务

添加新评论


手机号仅后台超管可见,普通注册用户以及网站前台全站不可见,请勿担心泄露风险!