# Webdav will nicht funktionieren



## big-d (4. Mai 2012)

Ja, wie der Titel schon verrät, funktioniert Webdav nicht bei mir. An der lokalen Konfiguration liegt es scheinbar nicht, da ich auf andere Webdav server komme. Ich nutze ISPConfig 3.0.4.4 .  Hoffe auf Hilfe, big-d


----------



## nowayback (5. Mai 2012)

Moinsen,

kannst du dich bitte etwas klarer ausdrücken?



> An der lokalen Konfiguration liegt es scheinbar nicht, da ich auf andere Webdav server komme


Meinst du die lokale Serverkonfiguration oder die deines PC's? 

Welches Betriebssystem setzt du auf dem PC von dem aus du testest ein?
Bei Windows 7 und Windows Vista: Hast du den Wert BasicAuthLevel auf 2 umgestellt bzw. eingetragen in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters (Keine Ahnung warum der hier bei Services ein  Leerzeichen reinmacht... aber es sollte zusammengeschrieben sein)

Wie stellst du die Verbindung her? 

Grüße
nwb


----------



## big-d (6. Mai 2012)

Hallo und danke für Deine Antwort! Es liegt nicht an der lokalen Clientkonfiguration meines Computers.  Ich nutze Windows 7 Home Premium mit 64bit. Ja, der Schlüssel ist gesetzt. Und ich mappe Webdav als Laufwerk


----------



## Burge (6. Mai 2012)

Und wie ist die install vom server welches os was sagen logs etc etc.

Ist irgendwie echt schwer dein Problem mit der Glaskugel zu lösen


----------



## big-d (6. Mai 2012)

Ich weiss schon, meine ist auch kaputt^^ Nein, jetzt mal im ernst: Ich habe es gefixt, nur wie, das weiss ich nicht!


----------



## egaldoch (7. Mai 2012)

*Problem*

Leider funktioniert WebDav bei mir leider auch nicht 
Ich verwende Debian Squeeze 64bit. In ISPConfig habe ich eine neue Website erstellt "domain.tld" und bei WedavUser einen User hinzugefügt. ISPconfig erstellt dann ganz normal das Web-Verzeichnis und das Webdav-Verzeichnis(/var/www/domain.tld/webdav/  -  /var/www/domain.tld/web/)
Wenn ich allerings Webdav öffnen möchte mit http://domain.tld:80/webdav
Erschein "Error 404 - Not Found" im standart Website Design! Eigentlich ja logisch da die domain.tld ja auf das Web-Verzeichnis gerichtet ist (/var/www/domain.tld/web/). Nun habe ich mir gedacht, erstelle ich mir doch eine Subdomain webdav.domain.tld und richte sie auf das Webdav-Verzeichnis (/var/www/domain.tld/webdav/). Allerdings funktioniert diese nicht und zeigt immernur auf das Root-Verzeichnis meines Webserver (/var/www/). Ich habe in den DNS-Einstellung meines Domain Hosters den A Record webdav gesetzt. Voreingestellt war aber auch schon der A Record * für alle Domains. In ISPconfig habe ich die Subdomain webdav.domain.tld erstellt und sie mittels L Redirect auf das Webdav-Verzeichnis (/var/www/domain.tld/webdav/) verlinkt. Aber wie schon gesagt zeigt dies keine Wirkung und die Subdomain, sowie beliebig andere landen nur im Root-Verzeichnis des Webserver.

Könnt ihr mir helfen?
Danke


----------



## Till (8. Mai 2012)

Du bringst hier die Verzeichnisse durcheinander. Webdav verweist auf ein eigenes Verzeichnis welches ein Unterverzeichnis von /var/www/domain.tld/webdav/ ist. Es verweist nie auf /var/www/domain.tld/web/ denn dort könntest Du mit webdav sowieso keine Dateien Schreiben da apache kein user switching für webdav unterstützt.


----------



## egaldoch (8. Mai 2012)

Hallo,
danke erstmal für die Antwort 
Ich habe mich oben vertippt. Mein Problem ist das ich mit der Addresse http://domain.tld:80/webdav mich nicht verbinden kann. Dann erscheint der "Error 404 - Not Found". Deshalb wollte ich eine Subdomain einrichten die auf das Webdav-Verzeichnis weitergeleitet wird und nicht auf das web Verzeichnis...

Hab ich da einen Denkfehler?


----------



## Burge (8. Mai 2012)

schau doch erstmal ins log warum der fehler kommt. Ist das verzeichnis da? ist der webdav mod gestartet etc.


----------



## egaldoch (8. Mai 2012)

Die Verzeichnisse wurden erstellt! Der Fehler ist glaube ich nur die Error Seite von der Standart-Webseite (Siehe angehängtes Bild). In der error.log steht folgendes: "[Tue May 08 14:19:18 2012] [error] [client xx.xxx.xxx.x] File does not exist: /var/www/domain.tld/web/webdav" 
Der Webdav mod wurde ebenfalls gestartet:
a2enmod dav_fs a2enmod dav

Die ersteltte vHost Datei von ISPConfig:

<Directory /var/www/domain.tld>
    AllowOverride None
    Order Deny,Allow
    Deny from all
</Directory>

<VirtualHost *:80>
      DocumentRoot /var/www/domain.tld/web

    ServerName domain.tld
    ServerAlias domain.tld
    ServerAdmin webmaster@domain.tld

    ErrorLog /var/log/ispconfig/httpd/domain.tld/error.log

    Alias /error/ "/var/www/domain.tld/web/error/"
    ErrorDocument 400 /error/400.html
    ErrorDocument 401 /error/401.html
    ErrorDocument 403 /error/403.html
    ErrorDocument 404 /error/404.html
    ErrorDocument 405 /error/405.html
    ErrorDocument 500 /error/500.html
    ErrorDocument 502 /error/502.html
    ErrorDocument 503 /error/503.html

    <IfModule mod_ssl.c>
    </IfModule>

    <Directory /var/www/domain.tld/web>
        Options FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
    <Directory /var/www/clients/client0/web8/web>
        Options FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>



    # suexec enabled
    <IfModule mod_suexec.c>
      SuexecUserGroup web8 client0
    </IfModule>
    # Clear PHP settings of this website
    <FilesMatch "\.ph(p3?|tml)$">
        SetHandler None
    </FilesMatch>
    # php as fast-cgi enabled
	# For config options see: mod_fcgid - Apache HTTP Server
    <IfModule mod_fcgid.c>
        IdleTimeout 300
        ProcessLifeTime 3600
        # MaxProcessCount 1000
        DefaultMinClassProcessCount 0
        DefaultMaxClassProcessCount 100
        IPCConnectTimeout 3
        IPCCommTimeout 360
        BusyTimeout 300
    </IfModule>
    <Directory /var/www/domain.tld/web>
        AddHandler fcgid-script .php .php3 .php4 .php5
        FCGIWrapper /var/www/php-fcgi-scripts/web8/.php-fcgi-starter .php
        Options +ExecCGI
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
    <Directory /var/www/clients/client0/web8/web>
        AddHandler fcgid-script .php .php3 .php4 .php5
        FCGIWrapper /var/www/php-fcgi-scripts/web8/.php-fcgi-starter .php
        Options +ExecCGI
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>


    # add support for apache mpm_itk
    <IfModule mpm_itk_module>
      AssignUserId web8 client0
    </IfModule>

    <IfModule mod_dav_fs.c>
	  # Do not execute PHP files in webdav directory
      <Directory /var/www/clients/client0/web8/webdav>
	    <FilesMatch "\.ph(p3?|tml)$">
          SetHandler None
        </FilesMatch>
      </Directory>
      # DO NOT REMOVE THE COMMENTS!
      # IF YOU REMOVE THEM, WEBDAV WILL NOT WORK ANYMORE!
      # WEBDAV BEGIN

      Alias /webdav/ /var/www/clients/client0/web8/webdav/
      <Location /webdav/>
        DAV On
        BrowserMatch "MSIE" AuthDigestEnableQueryStringHack=On
        AuthType Digest
        AuthName ""
        AuthUserFile /var/www/clients/client0/web8/webdav/.htdigest
        Require valid-user 
        Options +Indexes 
        Order allow,deny 
        Allow from all 
      </Location> 
      # WEBDAV END
    </IfModule>


</VirtualHost>

Ich glaube ISPConfig setzt die vHost Einstellungen falsch, so dass beim Aufruf von http://domain.tld/webdav/ auf das Web-Verzeichnis gelinkt wird und nicht auf das Webdav-Verzeichnis.


----------



## Till (8. Mai 2012)

Nimm mal bitte die IP anstatt * in den webseiteneinstellungen. falls die IP dort nicht erscheint, dann füge sie unter System > Server IP hinzu.


----------



## egaldoch (8. Mai 2012)

Danke für die Antwort!
Hab ich gemacht, hat aber leider zu keinem Erfolg geführt.
Noch eine Idee?


----------



## egaldoch (8. Mai 2012)

Hab den Fehler gefunden, es muss ein Authname gesetzt werden, da sonnst apache webdav nicht startet!

 AuthName "Beispielname" 

dann mus zusätzlich noch in der .htdigest der User:"Authname Beispielname"wverschlüsselt gesetzt werden.

Ich hoffe das wird beim nächsten Update von ISPConfig angepasst 

Bin Froh das es jetzt läuft!


----------



## egaldoch (8. Mai 2012)

Am einfachsten ist es bei Authname "/" einzutragen, dann spart man sich das Anpassen der .htdigest Datei, da dort Standarmäßig "/" als Authname eingetragen ist. Wichtig ist danach apache neuzustarten.


----------



## Till (9. Mai 2012)

Bei mir funktioniert webdav einwandrei in ISPConfig, habe gerade gestern erst neue Konten angelegt. Ich verwende hier ISPConfig 3.0.4.4 und Anpassungen sind da auf Debian und Ubuntu nicht notwendig.


----------



## mille81 (13. Sep. 2012)

Bei mir klappts leider auch nicht. Hab nach Anleitung den webdav User angelegt. das verzeichnis hab ich mit webdav/test angegeben.
apache2 restartet
dann versucht das ganze aufzurufen über meineseite.de:80/webdav/test

Er nimmt die Logindaten jedoch nicht und es kommt nur:

```
[B]Authorization Required[/B]

 This server could not verify that you are authorized to access the document requested.  Either you supplied the wrong credentials (e.g., bad password), or your browser doesn't understand how to supply the credentials required.
 Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
  Apache/2.2.22 (Ubuntu) Server at meineseite.de Port 80
```
Im error log ist nix zu findem.


----------



## nowayback (13. Sep. 2012)

> Welches Betriebssystem setzt du auf dem PC von dem aus du testest ein?
> Bei Windows 7 und Windows Vista: Hast du den Wert BasicAuthLevel auf 2 umgestellt bzw. eingetragen in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters (Keine Ahnung warum der hier bei Services ein Leerzeichen reinmacht... aber es sollte zusammengeschrieben sein)


Evtl. wären solche Infos hilfreich.


----------



## mille81 (13. Sep. 2012)

Ich hab nen Mac.
Müsste doch aber auch übern Browser gehen?
WebDav hat bisher immer funktioniert.


----------



## nowayback (13. Sep. 2012)

Webdav mitm Mac sollte funktionieren:

Gehe zu -> mit Server verbinden -> Webdav Adresse eingeben (mit http://...) ->  dann auf Verbinden -> registrierter Benutzer -> Benutzernamen und Kennwort eingeben -> Verbinden klicken... Danach sollte es unter Freigaben zu finden sein.


----------



## mille81 (13. Sep. 2012)

Na das ist doch das problem. geht eben nicht. und halt auch nicht übern browser


----------



## mille81 (13. Sep. 2012)

Hm ich hatte es vorhin proboert da gings nicht. Also nochmal passwort im ISPC erneuert und siehe da es geht!


----------

