Персональный
сайт
Игоря
Сысоева


 
english
 
sysoev.ru
 
nginx
 поехали!    
 документация    
 поддержка    
 изменения    
 скачать    
 ссылки    
 
mod_accel
mod_realip
mod_deflate
программирование
всякая всячина
windows
freebsd
apache
pppd
unix
web
 
обо мне
для писем
для денег
 

Директивы модуля ngx_http_dav_module

 

17.08.2009

Модуль ngx_http_dav_module обрабатывает HTTP- и WebDAV-методы PUT, DELETE, MKCOL, COPY и MOVE. По умолчанию модуль не собирается, нужно разрешить его сборку при конфигурировании параметром --with-http_dav_module.

Содержание

Пример конфигурации
Директивы
dav_access
dav_methods
create_full_put_path
min_delete_depth

Пример конфигурации

    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;
        }
    }

Директивы


syntax: dav_access пользователи:права [пользователи:права] ...
default: dav_access user:rw
context: http, server, location

Директива задаёт права доступа для создаваемых файлов и каталогов, например,

dav_access  user:rw  group:rw  all:r;
Если заданы какие-либо права для groups или all, то права для user указывать необязательно:
dav_access  group:rw  all:r;


syntax: dav_methods [off|put|delete|mkcol|copy|move] ...
default: dav_methods off
context: http, server, location

Директива разрешает указанные HTTP- и WebDAV-методы. Параметр off запрещает все методы, обарабатываемые данным модулем, игнорируя остальные параметры;

Файл, загружаемый методом PUT, записывается во временный файл, а потом этот файл переименовывается. Начиная с версии 0.8.9, временный файл и его постоянное место хранения могут располагаться на разных файловых системах, но нужно учитывать, что в этом случае вместо дешёвой операции переименовывания в пределах одной файловой системы файл копируется с одной файловой системы на другую. Поэтому лучше, если сохраняемые файлы будут находиться на той же файловой системе, что и каталог с временными файлами, задаваемый директивой client_body_temp_path для данного location.

При создании файла с помощью метода PUT можно задать дату модификации, передав её в строке заголовка "Date".


syntax: create_full_put_path on|off
default: create_full_put_path off
context: http, server, location

По спецификации WebDAV метод PUT может создавать файл только в уже существующем каталоге. Данная директива разрешает создавать все необходимые промежуточные каталоги.


syntax: min_delete_depth число
default: min_delete_depth 0
context: http, server, location

Данная директива разрешает методу DELETE удалять файлы при условии, что число элементов в пути запроса не меньше заданного. Например, директива

min_delete_depth  4;
разрешает удалять файлы по запросам
/users/00/00/name
/users/00/00/name/pic.jpg
/users/00/00/page.html
и запрещает удаление
/users/00/00


(C) Игорь Сысоев
http://sysoev.ru