scheuri: suse 8.0 und mod_auth_mysql (per apache-contrib.rpm)

hallo allerseits

entschuldigt, dass ich wieder mit der frage komme...aber im archiv wurde sie leider nicht beantwortet...

vorgehen:
habe apache und apache-contrib mit rpm's installiert und dann im /sysconfig/apache die variable HTTPD_SEC_MOD_AUTH_MYSQL von "no" auf "yes" gesetzt und ein SuSEconfig durchgeführt.
die beiden files suse_loadmodule und suse_addmodule wurden um jeweils mod_auth_mysql erweitert und apache liess sich ohne probleme restarten.

ABER...

ich kann per .htaccess nicht drauf zugreifen...auch kann ich nicht im httpd.conf die datanbank, etc angeben.
alle beispiele und dokumentationen, welche ich im netz fand, trafen nicht auf meine installation zu...wer weiss wieso?...(rhetorische frage).

alle meine variablen in der .htacces-datei wie "Auth_MySQL_Username" oder "Auth_MySQL_Username_Table" oder "Auth_MySQL_Password_Table" etc. wurden mit folgender fehlermeldung gesegnet:

test/.htaccess: Invalid command 'variable xyz', perhaps mis-spelled or defined by a module not included in the server configuration

ich weiss echt nicht wie weiter...habe alle schreibweisen ausprobiert....mit und ohne leerschlag, klein/grossschreinung, mit und ohne _ (underscore)....in der httpd.conf und in der .htaccess...

hat jemand erfahrung damit?
kann mir jemand ein tip geben, was ich schreiben könnte (sowohl in httpd.conf wie auch .htaccess-files) und somit das module nicht nur laden sondern auch nutzen kann?

danke 1000mal...
scheuri

  1. Hi scheuri,

    habe apache und apache-contrib mit rpm's installiert und dann im
    /sysconfig/apache die variable HTTPD_SEC_MOD_AUTH_MYSQL von "no"
    auf "yes" gesetzt und ein SuSEconfig durchgeführt.
    die beiden files suse_loadmodule und suse_addmodule wurden um
    jeweils mod_auth_mysql erweitert und apache liess sich ohne
    probleme restarten.

    puh - also ich habe schon ein paar Dutzend Apaches installiert, aber
    von diesen Begriffen habe ich bisher nicht einen einzigen auch nur
    gehört.

    alle beispiele und dokumentationen, welche ich im netz fand,
    trafen nicht auf meine installation zu...wer weiss wieso?...

    Weil Du nicht Apache verwendest, sondern das, was SuSE daraus gemacht
    hat. So ist das eben, wenn Du Dich einer black box anvertraust, statt
    den Apache selbst zu installieren und zu konfigurieren.

    Und noch dazu willst Du ein Fremdprodukt einsetzen, das natürlich
    wieder seine eigene Dokumentation hat und seine eigenen Voraussetzun-
    gen mitbringt.

    alle meine variablen in der .htacces-datei

    Variablen? In einer .htaccess-Datei stehen Apache-Direktiven.
    "Variablen" gibt es nicht - Apache ist keine Programmiersprache.

    wie "Auth_MySQL_Username" oder "Auth_MySQL_Username_Table"
    oder "Auth_MySQL_Password_Table" etc.

    Hm, ich kenne dieses 3rdparty-Fremdmodul nicht, aber die Namen der
    Direktiven sehen zumindest exotisch aus (siehe allerdings unten).

    test/.htaccess: Invalid command 'variable xyz',

    Äh, das paßt aber nicht zu Deinen Beispielen vorher.

    perhaps mis-spelled or defined by a module not included in the
    server configuration

    Das ist klar: Jedes Modul, das im Apache erfolgreich (!) geladen ist,
    bringt eigenen Code mit, um _seine_ Direktiven zu parsen.
    Wenn die Direktiven nicht verstanden werden, dann ist das Modul nicht
    da - in Deinem Falle also mod_auth_mysql nicht in den Apache geladen.

    ich weiss echt nicht wie weiter...habe alle schreibweisen
    ausprobiert....mit und ohne leerschlag, klein/grossschreinung, mit
    und ohne _ (underscore)....in der httpd.conf und in der .htaccess...

    Nichts davon macht irgend einen Sinn. Die Schreibweise steht in der
    Anleitung zu Deinem Modul - Variationen davon bringen nichts.
    (Wobei ich Underscores in Apache-Direktiven bisher nur in einem
    einzigen Modul gesehen habe - der allerdings auch Authentifizierung
    macht, vielleicht hat mod_auth_mysql das als Vorbild genommen.)

    kann mir jemand ein tip geben, was ich schreiben könnte (sowohl in
    httpd.conf wie auch .htaccess-files) und somit das module nicht nur
    laden sondern auch nutzen kann?

    Ich bezweifele, daß das Modul geladen ist.

    Suche mal, wo SuSE Deinen Apache versteckt hat (das Programm "httpd"
    meine ich damit) und gib dann das Kommando "httpd -L" ein. Das zeigt
    Dir eine (laaaange ...) Liste sämtlicher verfügbaren Direktiven an.
    (Tip: "httpd -L | grep -i "mysql")

    Viele Grüße
          Michael