Am Mit, 2002-12-18 um 08.04 schrieb Alexander Gessner:
Hallo Liste
Habe probs mit Apache und auth_mysql
RTFM http://modules.apache.org/ http://modules.apache.org/search?id=136 http://www.cgi101.com/class/password/mod_auth_mysql.html
Wie finde ich heraus welche mod_auth_mysql Version Installiert ist,
Die Version des Moduls passt schon zum Apachen. Statt über Version nachzudenken, lies lieber die DoKu.
und wie muss die DB Struktur angelegt sein,
Die Strukur der DB ist eigentlich relativ egal, in einer Spalte einer bestimmten Tabelle stehen halt die Benutzernamen und in einer anderen die Passworte. Welche Spalten welcher Tabelle das sind, ist ziemlich total egal, das definiert man und gut ist.
Wie lauten die Direktiven dafür, habe die mal so probiert:
AuthName "Privat" AuthType Basic AuthGroupFile /dev/null # OK AuthMySQLHost localhost # der Rechner auf dem die DB läuft AuthMySQLUser apache # Der MySQL User AuthMySQLPassword xxxxxxxxx # Das MySQL Passwort des Users apache AuthMySQLDB htaccess # der Name der Datenbank AuthMySQLUserTable apache_auth_users # Die Tabelle in der Datenbank AuthMySQLCryptedPasswords On # Passworte sind verschlüsselt # und jetzt brauchst Du noch # das Feld mit den Benutzernamen Auth_MySQL_Username_Field
# Das Feld mit den Passworten
Auth_MySQL_Password_Field
<Limit GET POST> require user gast # Unsinn, was willst Du mit dem User Gast? # Du brauchst stattdessen require valid-user </Limit> </Directory>
Also Apache meldet nur den Fehler:
[Wed Dec 18 08:39:01 2002] [error] user gast: password mismatch: /geheim/
Na sicher, was soll der User Gast? Die usernamen sollen wohl aus der Datenbank kommen
und Syntax OK
MySQL Struktur:
CREATE TABLE apache_auth_users ( user_name char(30) NOT NULL default '', user_passwd char(20) NOT NULL default '', user_group char(10) default NULL, PRIMARY KEY (user_name) ) TYPE=MyISAM;
Die Tabelle ist soweit OK, wenn Du die DoKu vorher gelesen hättest, hättest Du auch verstanden welche 3 Fehler (Felder für usernamen und Passwort nicht angegeben, require user gast) Du gemacht hast. Ach ja, ich benutze übrigens PostgreSQL und folglich mod_auth_pgsql, aber die Dinger funktionieren sehr ähnlich. Wolfgang