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