webdav 아파치(apache) 웹서버 이용 구축하기 > 리눅스서버
리눅스서버

webdav 아파치(apache) 웹서버 이용 구축하기

조회 316회 댓글 0건

설정은 간단합니다.

1) 모듈이 있는지 확인 합니다. 3개 모두 있어야 합니다.

간혹 lock에 대한 환경설정이 없는 설명이 있는데요. 여기선 있어야 합니다.

httpd -M | grep dav


 dav_module (shared)

 dav_fs_module (shared)

 dav_lock_module (shared)


소스설치일 경우 아래 옵션이 추가 되면 됩니다.

--enable-dav \

--enable-dav-fs \

--enable-dav-lock



2) 인증용 비번을 만들어 줍니다.

처음 테스트 할때는 간단한 BASIC 방식으로 하고 실제 운영시에는 가능하면 다이제스트 방식을 이용 하면 좋은데 환경설정 부분이 달라 집니다.

htpasswd -c /etc/httpd/webdav.password test01


3) 웹서버 환경설정을 아래와 같이 해줍니다.

DavLockDB /var/lock/apache_davlock/webdav

<VirtualHost *:80>

  ServerName test01.pabburi.co.kr

  DocumentRoot /var/www/html/webdav


  Alias /webdav /var/www/html/webdav

  <Location /webdav>

    DAV on

    AuthType Basic

    AuthName "webdav"

    AuthUserFile /etc/httpd/webdav.password

    Require valid-user

  </Location>

  <Directory /var/www/html/webdav>

    DAV on

    Options Indexes FollowSymLinks MultiViews

    AllowOverride all

    Order allow,deny

    allow from all

  </Directory>

</VirtualHost>


4) radirive 같은 프로그램 이용해서 접속 후 사용 합니다.

https만 되는것은 아니기 때문에 설정에서 체크를 빼면 http 만 가능 합니다.


포트를 변경하고 싶으면 웹서버 환경설정시 아래와 같이

Listen 11080

추가한 다음 가상 호스트에서 받아주면 됩니다.

<VirtualHost *:11080>


** 중요사항 **

DavLockDB /var/lock/apache_davlock/webdav

1) 이 부분이 없으면 500 번 오류가 발생 합니다.

500 internal server error


2) 웹서버 권한을 가지고 있어야 합니다.


3) 마지막에 파일명을 지정 해야 합니다.(이것 때문에 일요일 5시간 날림)

그래서 오늘 전체 환경 설정 지우고 하나씩 순차적으로 다시 진행하여 성공함. 오류는 아래와 같습니다.

증상은 목록은 잘 나옵니다. 그리고 파일도 테스트용 잘 받아집니다.

쓰기가 안됩니다.(디렉토리 생성이나, 삭제등)

[Sun Mar 20 16:12:14.522838 2022] [dav:error] [pid 15034:tid 139789898553088] [client 101.202.1.3:51687] The locks could not be queried for verification against a possible "If:" header.  [500, #0]

[Sun Mar 20 16:12:14.522903 2022] [dav:error] [pid 15034:tid 139789898553088] [client 101.202.1.3:51687] Could not open the lock database.  [500, #400]

[Sun Mar 20 16:12:14.522909 2022] [dav:error] [pid 15034:tid 139789898553088] (120021)APR does not understand this error code: [client 101.202.1.3:51687] Could not open property database.  [500, #1]

[Sun Mar 20 16:12:16.542273 2022] [dav:error] [pid 15034:tid 139789971982080] [client 101.202.1.3:51695] The locks could not be queried for verification against a possible "If:" header.  [500, #0]

[Sun Mar 20 16:12:16.542316 2022] [dav:error] [pid 15034:tid 139789971982080] [client 101.202.1.3:51695] Could not open the lock database.  [500, #400]

[Sun Mar 20 16:12:16.542321 2022] [dav:error] [pid 15034:tid 139789971982080] (120021)APR does not understand this error code: [client 101.202.1.3:51695] Could not open property database.  [500, #1]

[Sun Mar 20 16:12:20.578861 2022] [dav:error] [pid 15034:tid 139790003451648] [client 101.202.1.3:51706] The locks could not be queried for verification against a possible "If:" header.  [500, #0]

[Sun Mar 20 16:12:20.578905 2022] [dav:error] [pid 15034:tid 139790003451648] [client 101.202.1.3:51706] Could not open the lock database.  [500, #400]

[Sun Mar 20 16:12:20.578910 2022] [dav:error] [pid 15034:tid 139790003451648] (120021)APR does not understand this error code: [client 101.202.1.3:51706] Could not open property database.  [500, #1]



● 기본적으로 utf-8에 대한 설정은 하지 않아도 잘 되었습니다. 

raiDriver 에서 잘 되었는데 웹브라우저로 열어 보니 한글이 깨져 나와 아래를 추가 했습니다.


● 환경 설정은 변경한 다음 문법에 문제 없는지 확인 한 다음 설정을 다시 읽어 적용 시킵니다.

[root@pabburi /etc/httpd/conf.d] httpd -t

Syntax OK

[root@pabburi /etc/httpd/conf.d] systemctl reload httpd


● SSL을 사용하기 위해선 인증서가 있어야 합니다. 우리가 흔히 사용하는 https용 인증서 그것입니다.

하지만 개인용으로 사용하는것이면 서버에서 간단히 만들어 사용하면 됩니다.

불특정 다수에게 서비스 해야 된다면 무료 인증서 받아서 사용하시면 됩니다. 또는 구매하셔서 https 적용 시키면 됩니다.


  SSLEngine On

  SSLCertificateFile "/etc/httpd/ssl/pabburi.crt"

  SSLCertificateKeyFile "/etc/httpd/ssl/pabburi.key"


● 암호화 인증 방식을 다이제스트 방식으로 변경할것이면 아래 처럼 해주면 된다.

htdigest -c /etc/httpd/digest.passwd webdav test01


    AuthType Digest

    AuthName "webdav"

    AuthUserFile /etc/httpd/digest.passwd

    AuthDigestProvider file


--- 여기까지 베이직 인증 방식으로 WEBDAV 작동 여부 확인 ---


# 리눅스에서 WebDAV 접속이 잘 되는지 테스트 할때 사용

yum -y install cadaver.x86_64

cadaver https://wdav.pabburi.co.kr:55588/dev_server




  • 페이스북으로 공유
  • 트위터로  공유
  • 구글플러스로 공유
전체 85건 1 페이지
  • profile_image jpeg 보다 더 압축 성능이 좋은 webp 이미지에 대한 것입니다.앞으로 대세로 사용될 이미지 포맷으로 현재 버전의 크롬에서 잘 지원이 되기 때문에 이미지 태그에 그대로 사용하면 됩니다.# CentOS 설치 or 아마존 리눅스yum -y install libwebp-tools.x86_64# 변환 방법cwebp img.jpg -o img.jpg# 퀄리티를 줘서 압축 80까지 문제 없다cwebp -q 91 img.jpg -o img.jpg# we…
  • profile_image 리눅스에서 사용하는 png 압축 프로그램 입니다.기본적은 png은 훼손방식의 압축은 아니지만 이 프로그램은 훼손방식의 압축이지만 jpg와는 다른 방식으로 압축을 진행 합니다.결과는 아래 보시면 됩니다.각각 jpg, png 압축방식의 차이가 표현하는 방식이 다르기 때문에 이 부분을 이해하고 사용하는 것이 좋습니다. png는 gif의 라이센스 비용때문에 탄생한것으로 gif 처럼 훼손방식이 아닙니다.리눅스에서 아래와 같은 명령으로 어떤 패키지를 설치…
  • profile_image MySQL은 mysql 디비의 user, host, db 테이블을 직접 건드리는 방식도 가능 하지만 그렇게 하는것이 더 불편하고 힘듭니다.SQL 명령이 있으니 아래 참고 하여 사용하면 됩니다.# 간단하게 유저 추가하는방법 - rootCREATE USER 'root'@'접근IP' IDENTIFIED WITH 'mysql_native_password' BY '접근문자';# GRANT 이외의 권한을 모두 줍니다.GRANT ALL PRIVILEGES …
  • profile_image 쉘에서 특정 명령을 계속 실행 하는 방법입니다.현재 디렉토리에 변화가 있는지 확인(모니터링)while true; do (ls -al; sleep 2); done이 경우는 디비서버 변화에 대한 모니터링이 필요할때 사용 합니다.별도의 모니터 또는 화면을 분할하여 간간이 확인이 필요할때 사용하면 유용 합니다.while true; do (mysql -A  -u 디비유저 -p디비PW -h localhost -P 3306 -e "show master st…
  • profile_image 아파치 웹로그에서 특정 부분을 취합하여 많은 순으로 정렬하여 볼 수 있는 기능입니다.1) 먼저 웹로그에서 전체를 대상으로 해도 되지만 필요한 일부분만을 필터링하여 파일로 저장합니다.2) 저장된 파일에서 특정 부분을 소팅하고 숫자를 셉니다.cat /var/http/log/access_log | grep "보고싶은것" | grep '날짜'  | grep -v '제외시킬문자' > /var/http/log/www_log.txtawk '{ prin…
  • profile_image 러시아산 엔진엑스와 전통의 아파치 웹서버에 대한 것입니다. 잘못된 글들이 많아 결론만 간단하게 작성하게 되었습니다.결론부터 말하면 요즘버전의 아파치2.4 부터는 별차이 없습니다. 엔진엑스가 정적인 처리에서 더 나쁘진 않지만 그렇다는 것은 뭔가 기능이 적거나 하단 이야기가 되기도 합니다. 이유는 동일한 event 방식을 사용하기 때문입니다. 엔진엑스가 단순하다는 것은 심플하게 잘 설계 되었다는 의미가 되기도 하지만 기능이 적다는 것일 수 있기 때…
  • profile_image 로그인 유저의 목록을 보는 명령을 사용 하면 됩니다.명령은 last 입니다.그리고 뒤쪽에 -30 같은 옵션을 주면 30개의 목록을 볼 수 있습니다.로그인 할 때마다 매일 자동으로 보고 싶으면 /etc/bashrc 파일 끝에 넣어 주면 로그인 할 때 마다 접속한 목록을 볼 수 있습니다.* 로그인한 유저의 리눅스 IP 접속기록  그리고 리눅스에서 로그를 봐도 되는데요/var/log 디렉토리를 보시면 됩니다.보통 아래 파일을 많이 확인 합니다/var…