模块 ngx_http_dav_module
create_full_put_path dav_access dav_methods min_delete_depth 的配置 Directives 示例 |
这ngx_http_dav_module
module 用于文件
通过 WebDAV 协议实现管理自动化。
该模块处理 HTTP 和 WebDAV
方法 PUT、DELETE、MKCOL、COPY 和 MOVE。
这个模块不是默认构建的,它应该使用--with-http_dav_module
configuration 参数。
需要其他 WebDAV 方法才能运行的 WebDAV 客户端 不适用于此模块。
示例配置
location / { root /data/www; client_body_temp_path /data/client_temp; dav_methods PUT DELETE MKCOL COPY MOVE; create_full_put_path on; dav_access group:rw all:r; limit_except GET { allow 192.168.1.0/32; deny all; } }
Directives
语法: |
create_full_put_path |
---|---|
默认值: |
create_full_put_path off; |
上下文: |
http ,server ,location |
WebDAV 规范只允许在 existing 目录。 该Directives允许创建所有需要的中间目录。
语法: |
dav_access |
---|---|
默认值: |
dav_access user:rw; |
上下文: |
http ,server ,location |
为新创建的文件和目录设置访问权限,例如:
dav_access user:rw group:rw all:r;
如果有group
或all
访问权限
指定user
权限可以省略:
dav_access group:rw all:r;
语法: |
dav_methods
|
---|---|
默认值: |
dav_methods off; |
上下文: |
http ,server ,location |
允许指定的 HTTP 和 WebDAV 方法。
参数off
拒绝所有已处理的方法
通过此模块。
支持以下方法:PUT
,DELETE
,MKCOL
,COPY
和MOVE
.
使用 PUT 方法上传的文件首先写入临时文件 ,然后重命名文件。 从版本 0.8.9 开始,临时文件和持久化存储 可以放在不同的文件系统上。 但是,请注意,在这种情况下,文件会被复制 跨两个文件系统,而不是廉价的重命名作。 因此,建议对于任何给定位置,保存的文件和 目录保存临时文件(由 client_body_temp_path Directives设置)放在同一个文件系统上。
使用 PUT 方法创建文件时,可以指定 通过在 “Date” 中传递修改日期 header 字段。
语法: |
min_delete_depth |
---|---|
默认值: |
min_delete_depth 0; |
上下文: |
http ,server ,location |
允许 DELETE 方法删除文件,前提是 请求路径中的元素数不小于指定的 数。 例如,Directives
min_delete_depth 4;
允许根据请求删除文件
/users/00/00/name /users/00/00/name/pic.jpg /users/00/00/page.html
并否认删除了
/users/00/00