Доступ на запись на сервер Apache WebDAV
Я установил сервер WebDAV под управлением Arch Linux 3.19.3 и Apache 2.4, в соответствии с Arch Wiki [ 1] [ 2] и документацией Apache [ 3].
Единственные изменения, которые я сделал в /etc/httpd/conf/httpd.conf
:
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule dav_lock_module modules/mod_dav_lock.so
DAVLockDB /home/httpd/dav/DAVLock
Alias /dav "/srv/http/dav"
<Directory "/srv/http/dav">
DAV On
AllowOverride None
Options Indexes FollowSymLinks
AuthType Basic
AuthName name
AuthUserFile /etc/httpd/conf/passwd
Require user name
Order allow,deny
allow
</Directory>
Связанные папки и их владельцы и разрешения
drwxr-xr-x root root /srv
drwxrwxr-x http http /srv/http
drwxrwxr-x http http /srv/http/dav
Поскольку я редактирую это, я понимаю следующее, где проблема.
drw-rw-r-x http http /home/httpd
Разрешения должны быть вместо
drwxrwxr-x http http /home/httpd
поскольку вы не можете получить доступ к содержимому папки, не имея возможности выполнить (открыть) ее.
Я оставляю нить для загробной жизни. Надеюсь, кто-то найдет это полезным.
1 ответ
Решение
Вот где проблема.
drw-rw-r-x http http /home/httpd
Разрешения должны быть вместо (и такими же для подкаталога)
drwxrwxr-x http http /home/httpd
поскольку вы не можете получить доступ к содержимому папки, не имея возможности выполнить (открыть) ее.