Hallo,
ich möchte http_auth zusammen mit mysql verwenden.
ich habe 2 Module gefunden mod_auth_mysql und mod_authz_dbm.
Die letzte Version von mod_auth_mysql kam irgendwann 2005 heraus. Wird das nicht mehr weiterentwickelt?
Nein. Das Modul (mod_auth_mysql) ist für Apache bis 2.0 geschrieben worden. In Apache 2.2 hat sich etliches, was Authentifizierung angeht, komplett geändert, deswegen wurde für Apache 2.2 ein neues Modul (mod_authn_dbd, *nicht* mod_authz_dbm, das ist was anderes!) geschrieben, was allgemein Authentifizierung über Datenbanken erledigen soll (und auch multiple Datenbanken unterstützen soll).
mod_authz_dbm kann man nicht in einer .htaccess Datei Konfigurieren, warum eigentlich?
mod_authn_dbd kann man so halb in einer .htaccess-Datei konfigurieren. mod_authn_dbd beruht nämlich auf mod_dbd, was für Apache ab 2.2 allgemeines Datenbankmanagement macht - d.h. Datebankverbindungen aus Performancegründen ständig offen hält. Die Datenbankverbindung selbst muss daher in der zentralen Serverkonfiguration konfiguriert werden, damit das funktioniert. (Das müsste natürlich nicht so sein, aber die Apache-Entwickler haben es so implementiert und das ist der aktuelle Umfang von mod_dbd/mod_authn_dbd.) Das mod_authn_dbd und die SQL-Queries selbst kann man dagegen in der .htaccess einrichten, wenn denn mal die Datenbankverbindung bereits konfiguriert ist.
Sprich: Wenn Du Apache bis Version 2.0.x hast, dann kannst Du noch mod_auth_mysql verwenden, was in der .htaccess konfiguriert werden kann. Wenn Du Apache ab 2.2.0 verwendest, dann kannst Du DB-Authentifizierung nicht mehr alleine nur in der .htaccess konfigurieren, weil mod_dbd sich nicht in der .htaccess konfigurieren lässt. Andere simple Möglichkeiten gibt es mit Apache selbst im Moment nicht, evtl. kannst Du Dich mit bestimmten Scriptsprachenmodulen wie mod_perl oder mod_lua manuell "einklinken" und das zu Fuß machen oder per FastCGI (mod_fastcgi oder mod_fcgid) die Authentifizierung erledigen, was aber nicht ganz trivial ist.
Viele Grüße,
Christian
Mein "Weblog" [RSS]
Using XSLT to create JSON output (Saxon-B 9.0 for Java)
How to tell the difference between a science fan and a scientist.