Hi folks, I've just set a WebDAV directory in order to let users upload files as an alternative to the good old FTP. Since it might be useful, here are the steps. I hope you enjoy! Adhemar
*Configuring WebDAV*
In order to provide a drag and drop interface to upload files to galaxy, one can choose WebDAV. To make it available, you'll need to install the following:
# These modules are responsible for enabling the DAV protocol through the apache webserver mod_dav mod_dav_fs
# This package is necessary in order to set galaxy uid/gid (AssignUserId) rather than the default apache user httpd-itk.x86_64 : MPM Itk for Apache HTTP Server
# First, install httpd-itk (http://www.webtatic.com/packages/httpd-itk/):
yum install httpd-itk
# Then edit /etc/sysconfig/httpd and add the following line:
HTTPD=/usr/sbin/httpd.itk
# The galaxy user must have write permission in the directory containing the DavLockDB files otherwise:
[error] [client 127.0.0.1] The locks could not be queried for verification against a possible "If:" header. [500, #0] [error] [client 127.0.0.1] Could not open the lock database. [500, #400] [error] [client 127.0.0.1] (13)Permission denied: Could not open property database. [500, #1]
# Here's an example of apache's virtual host configuration, assuming ftp_upload_dir = /home/galaxy/database/ftp in the Galaxy config file:
# include 'REMOTE_USER' in the directory path in order to limit users to their own directories RewriteRule ^/repository(.*) /home/galaxy/database/ftp/%{LA-U:REMOTE_USER}$1
<Directory /var/webdav> Options Indexes FollowSymlinks MultiViews AllowOverride None Order Allow,Deny Allow from all
# set the galaxy user and group for your vhosts to use AssignUserId galaxy galaxy
# here follows the PAM authentication in order to allow users registered in the server itself # can be changed to ldap, htpasswd file, ... AuthType Basic AuthName Repository AuthPAM_Enabled on Require valid-user
# activate mod_dav Dav On
</Directory>
# It's necessary to create each user directory with the correct galaxy user permissions!!!
# After that you can use a webdav client (cadaver) or map the network directory in a filemanager (nautilus, konqueror, orca) to view/edit/transfer files.
cadaver http://hostname/repository
galaxy-dev@lists.galaxyproject.org