Webdav에 연결할 수 없습니다: 405 메서드가 허용되지 않습니다.

Webdav에 연결할 수 없습니다: 405 메서드가 허용되지 않습니다.

Ubuntu 16.04를 실행하는 작은 서버가 있습니다. https를 통해 웹페이지를 성공적으로 제공합니다.

또한 Apache에서 https를 통해 webdav를 설정하고 싶습니다. 이것을 명시적으로 설정하는 튜토리얼을 찾는 데 어려움을 겪었고 결국 몇 가지 다른 튜토리얼의 정보를 사용하게 되었기 때문에 어느 시점에서 모순되는 일을 하고 있었을 가능성이 높지만 그것이 무엇인지는 모릅니다.

default-ssl-conf는 모든 템플릿 주석이 제거된 다음과 같습니다. DavLockDB 지시문을 추가하는 것 외에 Alias ​​명령 이전에는 어떤 설정도 변경하지 않았습니다.

DavLockDB /var/www/DavLock/davLock
<IfModule mod_ssl.c>
    <VirtualHost _default_:443>
            ServerAdmin me@me

            DocumentRoot /var/www/html

            ErrorLog ${APACHE_LOG_DIR}/error.log
            CustomLog ${APACHE_LOG_DIR}/access.log combined

            SSLEngine on

            SSLCertificateFile      /etc/ssl/certs/ssl-cert-snakeoil.pem
            SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key

            <FilesMatch "\.(cgi|shtml|phtml|php)$">
                            SSLOptions +StdEnvVars
            </FilesMatch>
            <Directory /usr/lib/cgi-bin>
                            SSLOptions +StdEnvVars
            </Directory>

            # My Webdav config starts here
            Alias "/webdav" "/var/www/webdav"

            <Directory /var/www/webdav>
                DAV on
                DirectoryIndex disabled
                AuthType Digest
                AuthName "webdav"
                AuthUserFile /etc/apache2/users.password
                Require valid-user
            </Directory>

    </VirtualHost>

cadaver를 통해 localhost 또는 정규화된 이름에 연결하면 동일한 응답이 제공됩니다.

jbhelfrich@arm:/etc/apache2/sites-available$ cadaver https://localhost/webdav
Could not access /webdav/ (not WebDAV-enabled?):
405 Method Not Allowed
Connection to `localhost' closed.

또한 /webdav 없이 시도했지만 동일한 기본 응답을 받았습니다. /var/www/DavLock 및 /var/www/webdav는 모두 www-data에 속합니다.

/var/logs/apache2/access.log 표시

::1 - - [10/Aug/2016:20:07:44 +0000] "OPTIONS / HTTP/1.1" 200 229 "-" "cadaver/0.23.3 neon/0.30.1"
::1 - - [10/Aug/2016:20:07:44 +0000] "PROPFIND / HTTP/1.1" 405 501 "-" "cadaver/0.23.3 neon/0.30.1"

error.log에는 관련 내용이 표시되지 않으며 other_vhosts_access.log는 비어 있습니다.

별칭, dav_fs, dav 및 dav_lock 모듈이 모두 활성화되었습니다.

내가 놓친 부분을 아는 사람이 있나요?

답변1

문제는 Lets Encrypt 구성 프로세스가 내가 눈치채지 못한 사이트별 SSL 구성을 생성한다는 것입니다. 위의 코드를 이 파일에 복사했는데 모든 것이 잘 작동했습니다.

관련 정보