Перейти к основному содержанию
 

Seafile — настраиваем WebDAV

Seafile

WebDAV поддерживается сервером Seafile. Нужно только его настроить. У меня используется nginx, поэтому понадобится настроить ещё и его.

Ссылки

Мануал: 

https://manual.seafile.com/extension/webdav.html

Конфигурация WebDAV

Файл конфигурации /conf/seafdav.conf, настроим его:

[WEBDAV]
enabled = true
host = 0.0.0.0
port = 8080
fastcgi = true
share_name = /seafdav

Перезапускаем seafile:

service seafile restart

Конфигурация Nginx

Добавляем в config Nginx новый location:

location /seafdav {
    fastcgi_pass    127.0.0.1:8080;
    fastcgi_param   SCRIPT_FILENAME     $document_root$fastcgi_script_name;
    fastcgi_param   PATH_INFO           $fastcgi_script_name;

    fastcgi_param   SERVER_PROTOCOL     $server_protocol;
    fastcgi_param   QUERY_STRING        $query_string;
    fastcgi_param   REQUEST_METHOD      $request_method;
    fastcgi_param   CONTENT_TYPE        $content_type;
    fastcgi_param   CONTENT_LENGTH      $content_length;
    fastcgi_param   SERVER_ADDR         $server_addr;
    fastcgi_param   SERVER_PORT         $server_port;
    fastcgi_param   SERVER_NAME         $server_name;

    client_max_body_size 0;
    proxy_connect_timeout  36000s;
    proxy_read_timeout  36000s;
    proxy_send_timeout  36000s;
    send_timeout  36000s;

    # This option is only available for Nginx >= 1.8.0. See more details below.
    proxy_request_buffering off;

    access_log      /var/log/nginx/seafdav.access.log;
    error_log       /var/log/nginx/seafdav.error.log;
}

Перезапускаем Nginx:

service nginx restart

Добавляем WebDAV диск в Windows

Нажимаем правой кнопкой на "Мой компьютер", "Подключить сетевой диск".

seafile

Открывается мастер подключений.

seafile

Указываем букву для диска, URL к папке /seafdav вашего облака. При желании выберите галку для восстановления подключения при входе в систему. Также выберите галку "Использовать другие учётные данные". Готово.

seafile

Укажите логин и пароль от seafile. OK.

seafile

Ваше домашнее облако подключено как сетевой диск.

Примечание про Fastcgi

Начиная с версии 7.1.x Seafile не поддерживает Fastcgi, только Wsgi. Поэтому конфиги будут такие:

Для Nginx:

location /seafdav {
            proxy_pass         http://127.0.0.1:8080/seafdav;
            proxy_set_header   Host $host;
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header   X-Forwarded-Host $server_name;
            proxy_set_header   X-Forwarded-Proto $scheme;
            client_max_body_size 0;
            access_log      /var/log/nginx/seafdav.access.log;
            error_log       /var/log/nginx/seafdav.error.log;

            proxy_connect_timeout  36000s;
            proxy_read_timeout  36000s;
            proxy_send_timeout  36000s;
            send_timeout  36000s;

            # This option is only available for Nginx >= 1.8.0. See more details below.
            proxy_request_buffering off;

}

Для Apache:

<Location /seafdav>
        ProxyPass "http://127.0.0.1:8080/seafdav"
</Location>