# apache2 webdav PROPFIND error[solved]

## AnubisTheKing

hi,

also ich habe mir den apache2 aufgesetzt um darüber per WebDav auf meine Daten zugreifen zu können. ich hatte das ganze auch früher schon mal am laufen, aber irgendwie will es im Augenblick nicht mehr funktionieren.

Also meinen Apache2 habe ich so konfiguriert, dass man nur mitterls ssl-verschlüsselung drauf zugreifen kann. In der ssl_err_log steht immer folgender Fehler, wenn ich auf mein WebDav verzeichnis zugreifen will:

```

[error] [client xxx.xxx.xxx.xxx] Provider encountered an error while streaming a multistatus PROPFIND response.  [404, #0]

```

Nur mit http kann ich prima auf meine Sachen zugreifen.

Hier meine dav config:

```

<IfDefine DAV>

  <IfModule !mod_dav.c>

    LoadModule dav_module    modules/mod_dav.so

  </IfModule>

</IfDefine>

<IfDefine DAV_FS>

  <IfModule !mod_dav_fs.c>

    LoadModule dav_fs_module   modules/mod_dav_fs.so

  </IfModule>

</IfDefine>

<IfModule mod_dav.c>

  Alias /webdav /home/webdav

  <Directory /home/webdav>

    #WebDAV einschalten

    Dav On

    DavMinTimeout 600

    #Alle Dateien als Plain Text zurueckgeben

    #auch Scripte

    ForceType text/plain

    #Benutzterauthentifizierung

    AuthType Basic

    AuthName "WebDAV auf debian.baer.rwth-aachen.de"

    AuthUserFile /etc/apache2/webdavpasswd

    #AuthGroupFile /etc/apache2/webdavgpasswd

    #Alle definierten User duerfen zugreifen

    Require valid-user

    #Keine .htaccess-Datreien erlauben

    AllowOverride None

    Order allow,deny

    Allow from all

    #Auflisten des Verzeichnisinhaltes erlauben

    Options Indexes

  </Directory>

</IfModule>

<IfModule mod_dav_fs.c>

    # Location of the WebDAV lock database.

    DavLockDB /var/lib/dav/lockdb

</IfModule>

```

Leider habe ich keine Ahnung woran der Fehler liegen kann. Google und suchen hat auch nicht ergeben  :Sad: . Weiß einer von euch rat?

Danke schonmal für die Hilfe,

bis dann

Volker

----------

## ekutay

Du brauchst vielleicht noch sowas

 *Quote:*   

> <Limit GET POST OPTIONS PROPFIND>
> 
>         Order allow,deny
> 
>         Allow from all
> ...

 

in dem ordner auf den du gerne zugreifen möchtest. 

Oder besser gleich

 *Quote:*   

>     <Limit GET POST OPTIONS PROPFIND PUT DELETE PATCH PROPPATCH MKCOL COPY MOVE LOCK UNLOCK>
> 
>         Order allow,deny
> 
>         Allow from all
> ...

 

 :Wink: 

----------

## AnubisTheKing

Ich dachte mit den Limit-Tags kann man zugriffe für bestimmte Befehle regeln. Da aber nur ich den Webdav benutzten werde, will ich nur das ich mich authentifizieren muss und dann vollen Zugriff habe. Dafür brauche ich dann keine Limit Option. 

Sicherheits halber werde ich es aber nachher nochmal ausprobieren  :Smile: .

Bis dann

Volker

----------

## ekutay

 *AnubisTheKing wrote:*   

> Ich dachte mit den Limit-Tags kann man zugriffe für bestimmte Befehle regeln. Da aber nur ich den Webdav benutzten werde, will ich nur das ich mich authentifizieren muss und dann vollen Zugriff habe. Dafür brauche ich dann keine Limit Option. 
> 
> Sicherheits halber werde ich es aber nachher nochmal ausprobieren .

 

Tu das. 

Sachen wie zum Beispiel HTTP PUT sind von Hause aus deaktiviert, was ja auch ganz gut so ist  :Smile:  Für WebDAV brauchst du aber diese Protokoll Elemente.

----------

## AnubisTheKing

tja ich habe das jetzt mal hinzugefügt, aber leider funktioniert es immer noch nicht. Immer noch der gleiche Error.

Noch jemand eine Idee?

----------

## ekutay

was setzt du denn für einen client ein?

und was meinst du mit  *Quote:*   

> Nur mit http kann ich prima auf meine Sachen zugreifen. 

 

heisst das, dass du das verzeichnis browsen kannst oder dass du mit WebDAV HTTP PUT sprechen kannst?

----------

## AnubisTheKing

ich kann das Verzeichnis browsen. Als Client habe ich versucht mit nautilus und mit davfs2 versucht. Beides klappt leider nicht.

----------

## ekutay

Versuch doch auch noch:

 *Quote:*   

> DavDepthInfinity On

 

Könnte damit zusammenhängen.

Was du auch noch testen könntest, ist cadaver auf den Ordner los zulassen. Musste ich mir aber letztes Mal händisch kompilieren, weil es irgendwelche (Lizenz?) Probleme mit der SSL Unterstützung unter Gentoo gab. Ich empfinde das Tool aber schon als eine Art Standard, also zum Konfi Testen sehr gut.

Problem ist bei so einer Fehlermeldung, dass da HTTP einfach zu beschränkt ist, da der Status zurückgegeben werden muss, ohne dass der Response wirklich erfolgt ist. Handelt sich ja um einen Stream. Leider weiss ich jetzt nicht genau, was denn der gesuchte Body war, der eine 404 geworfen hat. Nur dass er das getan hat.  :Sad: 

----------

## AnubisTheKing

das hast leider auch nicht gebracht  :Sad: . Ich emerge gerade mal cadaver, mal sehen ob dabei etwas raus kommt. 

Mir ist übrigens gerade noch etwas aufgefallen. Wenn ich micht mit davfs2 connecten möchte  bekomme ich:

```

WebDAV Enabled??

/dev/davfs0 to /mnt/dav mount error : Invalid argument

```

IWie kann ich feststellen ob webdav an ist ohne mit einem versuch zu connecten? Ich meine ich habe zwar "Dav On" in der config und auch -D DAV und -D DAV_FS, aber vielleicht ist bei mir Dav trotzdem nicht an? Wenn ja woran kann das liegen?

Ich habe auf meinem Server auch noch ein Subversion laufen, das funktioniert einwandfrei udn ich kann auch mit webdav drauf zugreifen. Alles ein bischen komisch.

----------

## AnubisTheKing

Ich habs. Man oh man darauf muss man erstmal kommen. Also mit cadaver funktionierte es zuerst auch nicht:

```

anubis@gegenue ~ $ cadaver https://seth/webdav

WARNING: Untrusted server certificate presented for `seth':

Issued to: Internet Widgits Pty Ltd, Aachen, NRW, DE

Issued by: Internet Widgits Pty Ltd, Aachen, NRW, DE

Certificate is valid from Apr 20 21:00:37 2005 GMT to Apr 19 21:00:37 2010 GMT

Do you wish to accept the certificate? (y/n) y

Authentication required for WebDAV auf debian.baer.rwth-aachen.de on server `seth':

Username: isis

Password:

dav:/webdav/> ls

Listing collection `/webdav/': failed:

Could not read status line: Secure connection truncated

dav:/webdav/>

```

So dann kam ich mal auf die Idee in ein Unterverzeichnis zu wechseln.

```

dav:/webdav/> cd Uploads

dav:/webdav/Uploads/> ls

Listing collection `/webdav/Uploads/': collection is empty.

dav:/webdav/Uploads/>

```

Und da klappt das?! Der einzige unterschied ist, das im Oberen Verzeichnis noch ein paar Files lagen. Die habe cih mal gelöscht und sie da sofort klappt es auch im oberen Verzeichnis.

```

dav:/webdav/Uploads/> cd ..

dav:/webdav/> ls

Listing collection `/webdav/': succeeded.

Coll:   Uploads                                0  Jan 31 21:29

        Readme.txt                           201  Dec  6 09:26

dav:/webdav/>

```

Und jetzt fragt mich nicht was der an den Files nicht mochte. Das waren keine besonderen. Die eine war nur ca. 4GB groß, vielleicht hat Webdav damit Probleme?

Danke auf jeden fall für die Hilfe ekutay.

Bis dann

AnubisTheKing

----------

## ekutay

okay, das waren dann die props, die die 404 geschmissen haben.... 

btw, konntest du cadaver aus der portage nehmen? ich könnte es natürlich auch selbst wieder versuchen, aber ich kann ja auch fragen.  :Smile: 

----------

## AnubisTheKing

ja ich habe cadaver aus dem Portage genommen. Läuft bis jetzt einwandfrei. Soviel habe ich allerdings damit noh nicht gemacht. AUfjeden Fall habe ich keine Probleme mit ssl.

Bis dann

AnubisTheKing

----------

