Как установить WebDAV с Lighttpd на Debian 8 (Джесси)
Это руководство существует для этих версий ОС
- Debian 8 (Джесси)
- Debian 5 (Ленни)
На этой странице
- 1 Предварительное примечание
- 2 Установка WebDAV
- 3 Создание виртуального хоста
- 4. Настройка виртуального хоста для WebDAV
- 5 Тестирование WebDAV
- 6 ссылок
В этом руководстве объясняется, как настроить WebDAV с Lighttpd на сервере Debian 8 (Jessie). WebDAV означает Распределенное создание и управление версиями через Интернет и представляет собой набор расширений протокола HTTP, которые позволяют пользователям напрямую редактировать файлы на сервере Lighthttpdd, чтобы их не нужно было загружать/выгружать через FTP. . Конечно, WebDAV также можно использовать для загрузки и скачивания файлов.
1 Предварительное примечание
Я использую сервер Debian 8 с IP-адресом 192.168.1.100 здесь. Моя установка основана на руководстве по минимальному серверу Debian, но любая система Debian, в которой еще не запущен веб-сервер, должна подойти.
2 Установка WebDAV
Вы можете установить lighttpd (если он еще не установлен), модуль lighttpd WebDAV и пакет apache2-utils (который содержит инструмент htpasswd, который нам понадобится позже для создания файла паролей для общего ресурса WebDAV) следующим образом:
apt-get -y install lighttpd lighttpd-mod-webdav apache2-utils
После этого мы должны убедиться, что каталог /var/run/lighttpd принадлежит пользователю и группе www-data. Этот каталог будет содержать базу данных SQLite, необходимую для WebDAV:
chown www-data:www-data /var/run/lighttpd/
Далее включаем модули mod_auth и mod_webdav:
lighty-enable-mod auth
lighty-enable-mod webdav
После этого перезагрузите Lighttpd:
service lighttpd force-reload
3 Создание виртуального хоста
Теперь я создам виртуальный хост Lighttpd (www.example.com) в каталоге /var/www/web1/web. Если у вас уже есть виртуальный хост, для которого вы хотите включить WebDAV, вы должны настроить это руководство в соответствии со своей ситуацией.
Во-первых, мы создаем каталог /var/www/web1/web и делаем пользователя lighttpd (www-data) владельцем этого каталога:
mkdir -p /var/www/web1/web
chown www-data:www-data /var/www/web1/web
Затем открываем /etc/lighttpd/lighttpd.conf и добавляем в конец файла следующий vhost:
nano /etc/lighttpd/lighttpd.conf
[...] $HTTP["host"] == "www.example.com" { server.document-root = "/var/www/web1/web" }
После этого перезапускаем lighttpd:
service lighttpd restart
4 Настройте виртуальный хост для WebDAV
Теперь мы создаем файл паролей WebDAV /var/www/web1/passwd.dav с пользовательским тестом (переключатель -c создает файл, если он не существует):
htpasswd -c /var/www/web1/passwd.dav test
Вам будет предложено ввести пароль для пользовательского теста.
(Пожалуйста, не используйте переключатель -c, если /var/www/web1/passwd.dav уже существует, потому что это приведет к воссозданию файла с нуля, что означает, что вы потеряете всех пользователей в этом файле!)
Теперь меняем права доступа к файлу /var/www/web1/passwd.dav, чтобы к нему могли получить доступ только root и члены группы www-data:
chown root:www-data /var/www/web1/passwd.dav
chmod 640 /var/www/web1/passwd.dav
Теперь модифицируем наш виртуальный хост в /etc/lighttpd/lighttpd.conf, чтобы он выглядел следующим образом:
nano /etc/lighttpd/lighttpd.conf
$HTTP["host"] == "www.example.com" { server.document-root = "/var/www/web1/web" alias.url = ( "/webdav" => "/var/www/web1/web" ) $HTTP["url"] =~ "^/webdav($|/)" { webdav.activate = "enable" webdav.is-readonly = "disable"
dir-listing.activate = "enable" webdav.sqlite-db-name = "/var/run/lighttpd/lighttpd.webdav_lock.db" auth.backend = "htpasswd" auth.backend.htpasswd.userfile = "/var/www/web1/passwd.dav" auth.require = ( "" => ( "method" => "basic", "realm" => "webdav", "require" => "valid-user" ) ) } }
Директива alias.url делает (вместе с $HTTP[\url\] =~ \^/webdav($|/)\), что при вызове /webdav вызывается WebDAV, но вы по-прежнему можете получить доступ к весь корень документа vhost. Все другие URL-адреса этого виртуального хоста по-прежнему являются «нормальным» HTTP.
После этого перезапустите Lighttpd:
service lighttpd restart
5 Тестирование WebDAV
Теперь мы установим cadaver, клиент WebDAV из командной строки:
apt-get -y install cadaver
Чтобы проверить, работает ли WebDAV, введите:
cadaver http://www.example.com/webdav/
Вам будет предложено ввести имя пользователя. Введите test, а затем пароль для пользовательского теста. Если все пойдет хорошо, вам должен быть предоставлен доступ, что означает, что WebDAV работает нормально. Введите quit, чтобы выйти из оболочки WebDAV:
:/home/administrator#
6 ссылок
- WebDAV: http://www.webdav.org/
- Lighttpd: http://www.lighttpd.net/
- Debian: http://www.debian.org/