mod_auth_mysql aber wie?
Illbert
- webserver
0 Sönke Tesch0 illbert
Hallo,
ich möchte gerne das Apache-Modul 'mod_auth_mysql' unter Windows benutzen. Der Server scheint das Modul auch zunächst zu akzeptieren. läßt sich also ohne Fehler starten. Wenn ich aber nun ein Verzeichnis mit einer .htaccess-Datei mit den entsprechenden Direktiven anlege und das Verzeichnis danach ansurfe bekomme ich einen Internal Server Error angezeigt. Im Error-Log des Apache finden sich dann Fehlermedungen, dass der Apache die entsprechenden Direktiven nicht kennt.
[Sun May 05 17:50:59 2002] [alert] [client 127.0.0.1] c:/apache/htdocs/test/.htaccess: Invalid command 'Auth_MySQL_Group_Field', perhaps mis-spelled or defined by a module not included in the server configuration
Nun meine Frage: hat jemand eine brauchbare Anleitung, wie mit diesem Modul umzugehen ist? Ich wäre ausgesprochen dankbar :-)
ich möchte gerne das Apache-Modul 'mod_auth_mysql' unter Windows benutzen. Der Server scheint das Modul auch zunächst zu akzeptieren. läßt sich also ohne Fehler starten. Wenn ich aber nun ein Verzeichnis mit einer .htaccess-Datei mit den entsprechenden Direktiven anlege und das Verzeichnis danach ansurfe bekomme ich einen Internal Server Error angezeigt. Im Error-Log des Apache finden sich dann Fehlermedungen, dass der Apache die entsprechenden Direktiven nicht kennt.
Ich kenne das Modul nicht, aber IMHO deutet das eher darauf hin, daß er das Modul nicht geladen hat und dementsprechend die Anweisungen nicht kennt.
Die andere Möglichkeit, daß das Modul geladen ist und seine Anweisungen nicht angemeldet hat, halte ich für eher unwahrscheinlich. Der Weg ist standardisiert und wird zigfach benutzt, so daß da eigentlich nichts schiefgehen kann. Einziger Grund wäre da wohl, daß das auth_mysql-Modul fehlerhaft ist..
Benutze doch mal mod_info oder phpinfo() (falls installiert), um Dir anzeigen zu lassen, welche Module tatsächlich im Server sind.
Gruß,
soenk.e
ich möchte gerne das Apache-Modul 'mod_auth_mysql' unter Windows benutzen. Der Server scheint das Modul auch zunächst zu akzeptieren. läßt sich also ohne Fehler starten. Wenn ich aber nun ein Verzeichnis mit einer .htaccess-Datei mit den entsprechenden Direktiven anlege und das Verzeichnis danach ansurfe bekomme ich einen Internal Server Error angezeigt. Im Error-Log des Apache finden sich dann Fehlermedungen, dass der Apache die entsprechenden Direktiven nicht kennt.
Ich kenne das Modul nicht, aber IMHO deutet das eher darauf hin, daß er das Modul nicht geladen hat und dementsprechend die Anweisungen nicht kennt.
Die andere Möglichkeit, daß das Modul geladen ist und seine Anweisungen nicht angemeldet hat, halte ich für eher unwahrscheinlich. Der Weg ist standardisiert und wird zigfach benutzt, so daß da eigentlich nichts schiefgehen kann. Einziger Grund wäre da wohl, daß das auth_mysql-Modul fehlerhaft ist..
Benutze doch mal mod_info oder phpinfo() (falls installiert), um Dir anzeigen zu lassen, welche Module tatsächlich im Server sind.
Gruß,
soenk.e
Vielen Dank - der Tip mit dem mod_info ist schon mal ziemlich gut :-)
Vieleicht bekomme ich es jetzt gebacken, woch ich wirklich die erlaubten Direktiven für das Modul kenne.
Nur so zur Info: mod_auth_mysql erlaubt Authentifikation aus MySQL-DBs statt aus den ollen User-Dateien heraus.
use Mosche;
Vieleicht bekomme ich es jetzt gebacken, woch ich wirklich die erlaubten Direktiven für das Modul kenne.
Nur so zur Info: mod_auth_mysql erlaubt Authentifikation aus MySQL-DBs statt aus den ollen User-Dateien heraus.
Das gibts auch mit PostgreSQL Datenbanken (habe ich hier laufen).
Ich hatte beim zweiten Mal einrichten ein ähnliches Problem wie du jetzt, bei mir lag es daran, daß ich beim zweitenmal eine veraltete Dokumentation gefunden hatte, wo die Namen der Direktiven "falsch" (veraltet) waren. Vielleicht findest du was neueres.
Dia aktuellen Direktiven (von mod_auth_pg) haben die Form:
AuthPGDatabase
AuthPGUserTable
(PG für PostGresql)
Vielleicht haben sich die Module da angenähert.
use Tschoe qw(Matti);
use Mosche;
Vieleicht bekomme ich es jetzt gebacken, woch ich wirklich die erlaubten Direktiven für das Modul kenne.
Nur so zur Info: mod_auth_mysql erlaubt Authentifikation aus MySQL-DBs statt aus den ollen User-Dateien heraus.
Das gibts auch mit PostgreSQL Datenbanken (habe ich hier laufen).
Ich hatte beim zweiten Mal einrichten ein ähnliches Problem wie du jetzt, bei mir lag es daran, daß ich beim zweitenmal eine veraltete Dokumentation gefunden hatte, wo die Namen der Direktiven "falsch" (veraltet) waren. Vielleicht findest du was neueres.
Dia aktuellen Direktiven (von mod_auth_pg) haben die Form:
AuthPGDatabase
AuthPGUserTable
(PG für PostGresql)
Vielleicht haben sich die Module da angenähert.
use Tschoe qw(Matti);
@Matti
Genau das war das Problem. Nun funzt es, aber leider nicht wirklich so wie gewünscht. jetzt habe ich das Problem, dass ich einen MySQL-User anlegen möchte, über den der Apache auf auf die Datenbank zugreifen kann.
Einen entsprechenden User kann ich zwar anlegen, jedoch erlaubt MySQl diesem User den Zugriff nur, wenn ich das Attribut Password in der Usertabelle leer lasse und entsprechend in der .htaccess-Datei die Direktive 'AuthMySQLPassword' weglasse.
Diese Lösung erscheint mir aber extrem unsauber / unsicher. ich habe auch schon versucht, mit der htpasswd.exe vom Apache ein verschlüsseltes Passwort zu erzeugen und in die usertabelle von MySql zu kopieren, das hat aber auch nicht funktioniert.
Vielleicht hast du einen Tip???
Ciao Illbert