Activate WebDAV in Seafile

2022/12/30 by Paulo Pereira

~/categories/Linux #Linux #Arch Linux #Seafile

Activate WebDAV in Seafile

I turned off WebDAV in Seafile some time ago because it wasn’t working.

Can’t remember the issue itself, but I wasn’t actively using it so…

I’m now in version 9.0.13. Here’s how I enable it.

Make sure you have pycryptodome installed.

sudo pip install pycryptodome==3.12.0

Activate WebDAV in seafdav.conf

[WEBDAV]
enabled = true
port = 8888
share_name = /seafdav
show_repo_id = true

Configure ProxyPassReverse in Apache. In my case /etc/httpd/conf/extra/httpd-vhosts.conf

<Location /seafdav>
RequestHeader edit Destination ^https: http:
ProxyPass http://127.0.0.1:8888/seafdav
ProxyPassReverse http://127.0.0.1:8888/seafdav
</Location>

If you have 2FA configured you can’t login via WebDAV. The trick is to activate a different password for WebDAV. In seahub_settings.py the following.

ENABLE_WEBDAV_SECRET = True
WEBDAV_SECRET_MIN_LENGTH = 12

Restart.

sudo systemctl restart seafile
sudo systemctl restart seahub

Now in Seafile, in Setting you have a new option to add a password for WebDAV.

You can access WebDAV with https://yourdomain/seafdav