手机利用termux架设webdav服务器

背景

手里有个旧手机mate30pro,触摸屏断线后下半部分无法使用,换屏勉强成功,后玻璃盖又碎了,摄像头也不准,只能放弃,当是一场经历。

想想还有点利用价值,就装了个termux,日常跑点服务应该没问题,nginx什么的就没必要了,最后琢磨到webdav上

开始考虑用nginx,毕竟熟悉一点。检查后发现,虽然termux的nginx也打包了webdav支持,但是不支持ext模块,自己重新编译的代价太大,网上还是基于apache2的资料多一些。

实践

安装apache2后, 可以先测试apache2的运行

1
2
apachectl start
apachectl stop

termux 默认目录为: /data/data/com.termux/files/home apache2配置文件的相对目录为: ../usr/etc/apache2/

  1. 主配置文件 httpd.conf

修改端口、服务器名称,启用4个dav相关模块并启用DAV配置文件

1
2
3
4
5
6
7
8
   Listen 8080                        # 端口
   ServerName   localhost             # 服务器名
   LoadModule dav_module libexec/apache2/mod_dav.so
   LoadModule dav_fs_module libexec/apache2/mod_dav_fs.so
   LoadModule dav_lock_module libexec/apache2/mod_dav_lock.so
   LoadModule auth_digest_module libexec/apache2/mod_auth_digest.so

   Include etc/apache2/extra/httpd-dav.conf
  1. DAV配置文件 httpd-dav.conf 主要是修改该文件中的options权限
1
2
3
4
    <RequireAny>
        Require method PROPFIND MKCOL GET POST DELETE PUT COPY MOVE LOCK UNLOCK OPTIONS
        Require user XXXX
    </RequireAny>
  1. 创建目录,设置用户名密码
1
2
mkdir /data/data/com.termux/files/usr/uploads/
htdigest -c "/data/data/com.termux/files/usr/user.passwd" DAV-upload XXXX
  1. 用curl或者raidriver测试。

参考:

  1. Termux 使用 apache 搭建 webdav 服务器
  2. termux安装apache2 webdav
  3. 揭秘Apache Dav Mod:掌握文件共享与协作的利器
Licensed under CC BY-NC-SA 4.0
不积跬步,无以至千里;不积小流,无以成江海
使用 Hugo 构建
主题 StackJimmy 设计