背景
手里有个旧手机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/
- 主配置文件 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
|
- 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
2
|
mkdir /data/data/com.termux/files/usr/uploads/
htdigest -c "/data/data/com.termux/files/usr/user.passwd" DAV-upload XXXX
|
- 用curl或者raidriver测试。
参考:
- Termux 使用 apache 搭建 webdav 服务器
- termux安装apache2 webdav
- 揭秘Apache Dav Mod:掌握文件共享与协作的利器