XaraX: Einrichten von webdav unter apache 2.2.0 / AUTH-Modulproblem

Hallo,

habe mir gerade einen neuen Apache 2.2.0 gegönnt und wollte mich mit webdav vertraut machen. Zum einen ist zu bemerken, daß es erheblich scherer geworden ist eine einfache Authentifizierung mit den 13 (dafür abgestellten) Modulen einzurichten, zum anderen ist dort auch mein Problem. Der Konqueror meldet:

"Die Datei oder der Ordner webdav://loclahost/uploads/ existiert nicht."

Die Konfigurationsdatei (conf/extra/httpd-dav.conf) wurde wie folgt angepasst:

  
Alias /uploads "/chroot/apache/htdocs/uploads"  
  
<Directory "/chroot/apache/htdocs/uploads">  
    Dav On  
  
    AuthType Digest  
    AuthName DAV-upload  
    # You can use the htdigest program to create the password database:  
    #   htdigest -c "/chroot/apache/user.passwd" DAV-upload admin  
    AuthUserFile "/chroot/apache/htdocs/user.passwd"  
  
    # Allow universal read-access, but writes are restricted  
    # to the admin user.  
    <LimitExcept GET OPTIONS>  
        require user admin  
    </LimitExcept>  
</Directory>  

Folgende Fehlermeldung findet sich in den Serverlogs:

[Wed Jan 04 20:25:47 2006] [crit] [client 84.190.80.72] configuration error:  couldn't check access.  No groups file?: /uploads/

Das sieht mir so aus, als ob der Server zum Trotz (Zitat der httpd-dav.conf:) "Required modules: mod_dav, mod_dav_fs, mod_setenvif, mod_alias,mod_auth_digest, mod_authn_file" mehr von mir will. Nur was? Eine entsprechenden AuthGroupFile-Direktive nebst geladenem Modul und File birgt keine Besserung in sich.

Gruß aus Berlin!
eddi

  1. Hi,

    habe mir gerade einen neuen Apache 2.2.0 gegönnt und wollte mich mit webdav vertraut machen. Zum einen ist zu bemerken, daß es erheblich scherer geworden ist eine einfache Authentifizierung mit den 13 (dafür abgestellten) Modulen einzurichten, zum anderen ist dort auch mein Problem. Der Konqueror meldet:

    "Die Datei oder der Ordner webdav://loclahost/uploads/ existiert nicht."

    Hast Du Deinen DNS (bzw. die hosts-Datei) entsprechend eingerichtet, daß loclahost überhaupt erkannt wird? Normal wird doch nur localhost erkannt.

    Ich hab Webdav bis jetzt nur im Zusammenhang mit Sunbird benutzt - da wird als Protokoll http (GET und PUT) benutzt, nicht webdav - ist das vielleicht das Problem?

    cu,
    Andreas

    --
    Warum nennt sich Andreas hier MudGuard?
    Schreinerei Waechter
    Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
    1. Nabend Andreas,

      "Die Datei oder der Ordner webdav://loclahost/uploads/ existiert nicht."

      Hast Du Deinen DNS (bzw. die hosts-Datei) entsprechend eingerichtet, daß loclahost überhaupt erkannt wird?

      localhost ist hier nur eine Ersetzung für die IP. Daran kann es leider nicht liegen ;(

      Ich hab Webdav bis jetzt nur im Zusammenhang mit Sunbird benutzt - da wird als Protokoll http (GET und PUT) benutzt, nicht webdav - ist das vielleicht das Problem?

      Sunbird kannte ich auch noch nicht, danke :)

      Nebst PUT (HTTP RFC 2616) werden auch noch weitere Anfragemetoden definiert (RFC 2518), welche FTP-vergleichbare Funktionalität bereitstellen.

      Gruß aus Berlin!
      eddi

      1. Hi,

        "Die Datei oder der Ordner webdav://loclahost/uploads/ existiert nicht."
        Hast Du Deinen DNS (bzw. die hosts-Datei) entsprechend eingerichtet, daß loclahost überhaupt erkannt wird?
        localhost ist hier nur eine Ersetzung für die IP. Daran kann es leider nicht liegen ;(

        In der Fehlermeldung steht nicht localhost. Daß localhost korrekt erkannt wird, bezweifle ich ja gar nicht.
        Aber bei loclahost hab ich Zweifel ...

        cu,
        Andreas

        --
        Warum nennt sich Andreas hier MudGuard?
        Schreinerei Waechter
        Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
        1. Re:

          • nun muß ich es doch erklären

          Ich wollte lediglich die IP-Adresse des Testservers verbergen und war zu schlamppig, um auch die Fehlermeldung zu überarbeiten.

          Gruß aus Berlin!
          eddi

  2. hallo eddi,

    habe mir gerade einen neuen Apache 2.2.0 gegönnt

    Hrm. Du solltest bitte noch angeben, auf welchem System der nun herumrennt - für Windows gibt es noch keinen MSI-Installer, und auch die "großen" Linux-Distributionen haben ihn (bis auf Fedora) noch nicht im Angebot. Das bedeutet, du hast ihn dir vermutlich selber kompiliert.

    und wollte mich mit webdav vertraut machen.

    Das ist löblich, aber dazu brauchst du keinen Apache 2.2.x, das wäre auch mit einer "früheren" Version gegangen. Selbstverständlich hast du die Apache-Doku zum Thema gründlich nachgelesen?

    Zum einen ist zu bemerken, daß es erheblich scherer geworden ist eine einfache Authentifizierung mit den 13 (dafür abgestellten) Modulen einzurichten

    Es ist erheblich komplexer geworden und die zuständigen Module (übrigens: wie kommst du auf 13?) haben komplett nicht nur neue Namen, sondern auch allerhand neue Funktionen.

    Der Konqueror meldet:
    "Die Datei oder der Ordner webdav://loclahost/uploads/ existiert nicht."

    Aha, der Konqueror. Daß er den Tippfehler gewiß _nicht_ meldet, ist dir ja bereits erläutert worden.

    Die Konfigurationsdatei (conf/extra/httpd-dav.conf) wurde wie folgt angepasst

    Wurde sie auch unter "supplemental configuration" in der httpd.conf aktiviert?

    Folgende Fehlermeldung findet sich in den Serverlogs:
    [Wed Jan 04 20:25:47 2006] [crit] [client 84.190.80.72] configuration error:  couldn't check access.  No groups file?: /uploads/

    Sehr gut. Was an dieser Fehlermeldung verstehst du nicht?

    Das sieht mir so aus, als ob der Server [...] mehr von mir will.

    Nö. Er will nur das Richtige von dir.

    Nur was? Eine entsprechenden AuthGroupFile-Direktive nebst geladenem Modul und File birgt keine Besserung in sich.

    Schau dir nochmal deinen Abschnitt
      <LimitExcept GET OPTIONS>
        require user admin
      </LimitExcept>
    an.

    Grüße aus Berlin

    Christoph S.

    --
    Visitenkarte
    ss:| zu:) ls:& fo:) va:) sh:| rl:|
    1. Nabend Christoph :)

      Hrm. Du solltest bitte noch angeben, auf welchem System der nun herumrennt - für Windows gibt es noch keinen MSI-Installer, und auch die "großen" Linux-Distributionen haben ihn (bis auf Fedora) noch nicht im Angebot. Das bedeutet, du hast ihn dir vermutlich selber kompiliert.

      $ cat /proc/version

      Linux version 2.6.15 (root@ai000) (gcc version 3.4.4 (Gentoo 3.4.4-r1, ssp-3.4.4-1.0, pie-8.7.8)) #1 Tue Jan 3 09:59:01 CET 2006

      Der Server wurde mit ./configure selbst gebaut:

      $ source apache.conf

      ######## apache.conf ########
      CFLAGS="-O3 -march=k8 -fomit-frame-pointer -pipe" \ ./configure \ --enable-layout=eddi \ --enable-modules=max \ --enable-mods-shared=most \ --enable-ssl=shared \ --enable-static-support \ --enable-v4-mapped \ --with-mpm=worker \ --with-ssl \ --with-z
      #############################

      und wollte mich mit webdav vertraut machen.

      Das ist löblich, aber dazu brauchst du keinen Apache 2.2.x, das wäre auch mit einer "früheren" Version gegangen. Selbstverständlich hast du die Apache-Doku zum Thema gründlich nachgelesen?

      Gelesen - ja. (Gründlich?! - anscheinend nicht ;(

      Zum einen ist zu bemerken, daß es erheblich scherer geworden ist eine einfache Authentifizierung mit den 13 (dafür abgestellten) Modulen einzurichten

      Es ist erheblich komplexer geworden und die zuständigen Module (übrigens: wie kommst du auf 13?) haben komplett nicht nur neue Namen, sondern auch allerhand neue Funktionen.

      Durch Zählen bin ich auf 13 gekommen (enthalten als LoadModule-Direktive in der httpd.conf nach obenstehender Bauanweisung).

      Der Konqueror meldet:
      "Die Datei oder der Ordner webdav://loclahost/uploads/ existiert nicht."

      Aha, der Konqueror. Daß er den Tippfehler gewiß _nicht_ meldet, ist dir ja bereits erläutert worden.

      Die Konfigurationsdatei (conf/extra/httpd-dav.conf) wurde wie folgt angepasst

      Wurde sie auch unter "supplemental configuration" in der httpd.conf aktiviert?

      google://supplemental configuration site:httpd.apache.org Auf den Seiten von httpd.apache.org findet sich nicht dazu. Meinst Du die Include-Direktive?

      Folgende Fehlermeldung findet sich in den Serverlogs:
      [Wed Jan 04 20:25:47 2006] [crit] [client 84.190.80.72] configuration error:  couldn't check access.  No groups file?: /uploads/

      Sehr gut. Was an dieser Fehlermeldung verstehst du nicht?

      - warum apache "No groups file?: /uploads/" ausgibt
       - was apache mit "No groups file?: /uploads/" meint
       - was apache benötigt, um mich glücklich zumachen ;)

      Das sieht mir so aus, als ob der Server [...] mehr von mir will.

      Nö. Er will nur das Richtige von dir.

      Er sagts mir (für mich) cryptisch - Du dagegen noch gar nicht ;)

      Nur was? Eine entsprechenden AuthGroupFile-Direktive nebst geladenem Modul und File birgt keine Besserung in sich.

      Schau dir nochmal deinen Abschnitt
        <LimitExcept GET OPTIONS>
          require user admin
        </LimitExcept>
      an.

      Das, ausgerechnet, ist ein Originalzitiert aus der unter conf/extra zu findenden httpd-dav.conf. R/r - bewirkt rein gar nichts...

      Gruß aus Berlin!
      eddi

      --
      Ja - ich gebe manchmal Lösungen auf dem silbernen Tablett und
      Nein - sie werden dennoch nicht den Schlag vor den Kopf mit dem goldenen abwehren ;)
  3. Hi eddi!

    habe mir gerade einen neuen Apache 2.2.0 gegönnt und wollte mich mit webdav vertraut machen. Zum einen ist zu bemerken, daß es erheblich scherer geworden ist eine einfache Authentifizierung mit den 13 (dafür abgestellten) Modulen einzurichten, zum anderen ist dort auch mein Problem. Der Konqueror meldet: [...]

    Folgende Fehlermeldung findet sich in den Serverlogs:

    [Wed Jan 04 20:25:47 2006] [crit] [client 84.190.80.72] configuration error:  couldn't check access.  No groups file?: /uploads/

    Nur mal ein Schuss ins Blaue: Ist für das Verzeichnis »/chroot/apache/htdocs/uploads« ein entsprechendes Allow gesetzt? Die Fehlermeldung deutet zwar nicht darauf hin, aber eine Überprüfung wäre es eventuell wert. Ich selber habe bisher noch keine Zeit gehabt, mich näher mit dem Apache-2.2 in der Praxis auseinanderzusetzen, aber ich würde mir persönlich die ganze Dokumentation zu den neuen mod_auth*-Modulen anschauen, vielleicht findet sich dort noch etwas, was zu einer Lösung des Problems beiträgt.

    Ansonsten habe ich mit WebDav unter Apache-2.0.X in Zusammenarbeit mit mod_dav_svn (für Subversion) nur gute Erfahrungen gemacht.

    Grüße,
    Fabian St.

    1. Nabend Fabian,

      danke für den Hinweis. Das Verzeichnis ist mittels GET erreichbar. (Übrigens bin ich immer noch gläubiger Anhänger von gentoo wegen Dir ;)

      Nunja - Stunden und etliche Versuche später ist auch klar woran es hapert. Dieser oben beschriebene Fehler tritt auf, wenn man statt authz_user_module authz_groupfile_module einbindet.
       Anzumerken bleibt, daß der Konqueror sich mal wieder als Konquerolant erhausgestellt hat, da hier nicht auf den Statuscode 500 hingewiesen wurde. Leider ist demnach auch die Angabe in der httpd-dav.conf nicht hilfreich, sondern muß um authz_host_module und authz_user_module erweitert werden.

      Dank an Euch Mitsuchende!

      Gruß aus Berlin!
      eddi