웹사이트 검색

Debian 8(Jessie)에서 Lighttpd로 WebDAV를 설치하는 방법


이 튜토리얼은 다음 OS 버전에 대해 존재합니다.

  • 데비안 8(제시)
  • 데비안 5(레니)

이 페이지에서

  1. 1 서문
  2. 2 WebDAV 설치
  3. 3 가상 호스트 만들기\n
  4. 4 WebDAV용 가상 호스트 구성\n
  5. 5 WebDAV 테스트
  6. 6개의 링크

이 안내서는 Debian 8(Jessie) 서버에서 Lighttpd로 WebDAV를 설정하는 방법을 설명합니다. WebDAV는 Web-based Distributed Authoring and Versioning을 의미하며 사용자가 FTP를 통해 다운로드/업로드할 필요가 없도록 Lighttpdd 서버에서 직접 파일을 편집할 수 있는 HTTP 프로토콜의 확장 집합입니다. . 물론 WebDAV를 사용하여 파일을 업로드하고 다운로드할 수도 있습니다.

1 서문

여기에서 IP 주소가 192.168.1.100인 데비안 8 서버를 사용하고 있습니다. 내 설정은 Debian 최소 서버 자습서를 기반으로 하지만 아직 웹 서버를 실행하지 않는 모든 Debian 시스템은 괜찮을 것입니다.

2 WebDAV 설치

다음과 같이 lighttpd(아직 설치되지 않은 경우), lighttpd WebDAV 모듈 및 apache2-utils 패키지(나중에 WebDAV 공유용 암호 파일을 생성하는 데 필요한 htpasswd 도구 포함)를 설치할 수 있습니다.

apt-get -y install lighttpd lighttpd-mod-webdav apache2-utils

그런 다음 /var/run/lighthttpd 디렉토리가 www-data 사용자 및 그룹의 소유인지 확인해야 합니다. 이 디렉토리에는 WebDAV에 필요한 SQLite 데이터베이스가 포함됩니다.

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 가상 호스트 생성

이제 /var/www/web1/web 디렉토리에 Lighttpd vhost(www.example.com)를 생성하겠습니다. 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를 열고 다음 가상 호스트를 파일 끝에 추가합니다.

nano /etc/lighttpd/lighttpd.conf
[...]
$HTTP["host"] == "www.example.com" {
  server.document-root = "/var/www/web1/web"
}

그런 다음 lighttpd를 다시 시작합니다.

service lighttpd restart

4 WebDAV용 가상 호스트 구성

이제 test 사용자를 사용하여 WebDAV 암호 파일 /var/www/web1/passwd.dav를 만듭니다(-c 스위치는 파일이 없을 경우 파일을 만듭니다).

htpasswd -c /var/www/web1/passwd.dav test

사용자 테스트를 위해 비밀번호를 입력하라는 메시지가 표시됩니다.

(/var/www/web1/passwd.dav가 이미 존재하는 경우 -c 스위치를 사용하지 마십시오. 이렇게 하면 파일이 처음부터 다시 생성되므로 해당 파일의 모든 사용자가 손실됩니다!)

이제 루트와 www-data 그룹의 구성원만 액세스할 수 있도록 /var/www/web1/passwd.dav 파일의 권한을 변경합니다.

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 테스트

이제 명령줄 WebDAV 클라이언트인 cadaver를 설치합니다.

apt-get -y install cadaver

WebDAV가 작동하는지 테스트하려면 다음을 입력합니다.

cadaver http://www.example.com/webdav/

사용자 이름을 묻는 메시지가 나타납니다. test를 입력한 다음 사용자 test의 암호를 입력합니다. 모든 것이 순조롭게 진행된다면 WebDAV가 제대로 작동하고 있음을 의미하는 액세스 권한이 부여되어야 합니다. quit를 입력하여 WebDAV 셸을 종료합니다.

:/home/administrator#

6 링크

  • WebDAV: http://www.webdav.org/
  • Lighttpd: http://www.lighttpd.net/
  • 데비안: http://www.debian.org/