HTTP上传文件需要加载HTTP DAV 模块
默认安装是没有的。
需要修改配置文件
1 修改访问端口
这一步非必须操作,因为默认的时候80,所以我习惯修改成其他的,例如8092.
2 修改<Directory />
<Directory /> AllowOverride none # Require all denied Require all granted # 改denied为granted </Directory>
3 修改 DocumentRoot,因为默认是/var/www/html,这里在服务器上一般都是比较小的,应当换到数据磁盘去。这不也是非必须的。
如果切换了DocumentRoot的话,下面的default document root那里的也要修改成对应的路径,例如:
DocumentRoot "/data1/myshare" # Further relax access to the default document root: <Directory "/data1/myshare"> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>
4 使用DAV模块
DAVLockDB "/data1/myshare/uploads/Dav.lock" # 这个位置一定要写对嗯。 <Directory "/data1/myshare/uploads"> Dav on Allow from all </Directory>

测试是否生效:
echo "test" > testfile.txt # 创建测试文件 curl -T testfile.txt http://localhost:8092/uploads/ # 上传测试文件,返回状态码为201则上传成功,注意:无论目录是什么最后的‘/’不能忽略不写。 curl -O http://localhost:8080/uploads/testfile.txt # 测试下载文件 msm
如果上传和下载都没有问题,则没什么问题。
如果配置了用户名密码可使用-u添加用户名密码上传。