Modul für Apache programmieren

fanste

Erfahrenes Mitglied
Hi,

Da es zu einem Problem bei einem Standartmodul des Apache keine Lösung gab, dachte ich mir, dass ich mir nun selber ein Modul schreibe. habe zwar keine Ahnung davon, komme aber bis jetzt gut voran. :D
Der Code ist soweit fast fertig. Es handelt sich dabei um ein Modul, dass neben mod_vhost_alias zum Einsatz kommen soll. Es dient dazu im gleichen Prinzip eine Datei auszulesen und wie eine htaccess Datei mit Einstellungen zu behandeln.
Aber genau beim letzten Punkt hänge ich. Die Datei bekomme ich ohne Probleme ausgelesen, aber wie mache ich es, dass sie dann auch wie eine htaccess Datei behandelt wird und dann auch für das gesammte Verzeichnis gilt.

Zum besseren Verständniss:
Code:
Verzeichnisstrucktur:
C:/Server/htdocs/userwww/t/test/config/           <= User hat kein Zugriff auf diesen Ordner via FTP/PHP/...
   => config.dat
C:/Server/htdocs/userwww/t/test/html/           <= User hat normalen Zugriff
   => index.html
   => ...
---------------------------------------------
C:/Server/htdocs/userwww/f/fanste/config/           <= User hat kein Zugriff auf diesen Ordner via FTP/PHP/...
   => config.dat
C:/Server/htdocs/userwww/f/fanste/html/           <= User hat normalen Zugriff
    => index.html
    => ...

So, die Datei 'config.dat' soll nun eingelesen und wie eine htaccess Datei verwendet werden. Soll dann aber nicht für das Verzeichnis 'config', sondern für 'html' und alle darin befindlichen Dateien/Unterverzeichnise/... gültig sein.
Wie gesagt, es geht nur darum, diese Einstellungen aus 'config.dat' für das 'html' Verzeichnis gültig zu machen.
Gefunden habe ich dafür die Funktion
Code:
CORE_EXPORT(int) ap_parse_htaccess(void **result, request_rec *r, int override, const char *d, const char *access_name)

Aber wie ich die Anwenden muss, hab ich keinen blassen Schlimmer.

So, dass ist die Aufgabe an euch C/C++ (Apache-)Profis ;) Hoffe ihr könnt mir beim Fertigstellen des Moduls helfen. Danke schonmal im Vorraus.
 
Zuletzt bearbeitet:
Nun gut, entweder es kann oder es will keiner helfen. Muss ich eben schauen, wie ich alleine weiterkomme (auch wenn ich bis jetzt nichts dazu gefunden habe)
 
Erst das ind Deiner Signatur:
Problem gelöst? Dann markiere das Thema bitte als erledigt!
Beachte bitte die Netiquette. Insbesondere Punkt 15.

dann das:

Wie jeder an Geld kommt!
Das passt ja wohl nicht zusammen!
An Deiner Stelle würde ich das schnell aus Deiner Signatur löschen!
Abgesehen davon daß das, was da beschrieben wird, äußerst unseriös ist, ist es entgegen der Angaben im Text sehr wohl strafbar, da es sich um ein Schneeballsystem handelt. Das angekündigte EBook mit den angeblich wertvollen Informationen ändert daran nichts.
 
Hallo,

So, die Datei 'config.dat' soll nun eingelesen und wie eine htaccess Datei verwendet werden.
Würde ich nich in einem extra Modul machen...
In der Datei http.conf steht ja
Code:
AccessFileName .htaccess
da kannst du glaube auch mehrere Dateien angeben
Code:
AccessFileName config.dat
schon haste die Funktionalität

Wie gesagt, es geht nur darum, diese Einstellungen aus 'config.dat' für das 'html' Verzeichnis gültig zu machen.
Du brauchst nicht unbedingt eine .htaccess Datei in dem Verzeichnis.
Du kannst einen Eintrag in die http.conf machen
Könnte so aussehn:
Code:
<Directory "Pfad zu deinem html Verzeichnis">
	Options FollowSymlinks
        // weitere Rechte setzen....
	AuthType Basic 
        AuthUserFile "Dein Pfad zur config.dat die irgendwo auf der Platte liegen kann"
	AuthName "Mein Login"
	require valid-user
</Directory>

Könnte so funktionieren...
So einen Zugriff ohne .htaccess Datei in dem Verzeichnis und den "Directory" eintrag in der http.conf hab ich bei meinem Apache auch drinne und funktioniert.
Ob man mehrere Accessfiles angeben kann bin ich mir gerade nicht sicher ;-)
Vielleicht hilft dir das weiter :)
MfG Turri

PS: keine Gewähr, ist nur nen Ideenanstoß
 
Re: AW: Modul für Apache programmieren

Erst das ind Deiner Signatur:

dann das:


Das passt ja wohl nicht zusammen!
An Deiner Stelle würde ich das schnell aus Deiner Signatur löschen!
Abgesehen davon daß das, was da beschrieben wird, äußerst unseriös ist, ist es entgegen der Angaben im Text sehr wohl strafbar, da es sich um ein Schneeballsystem handelt. Das angekündigte EBook mit den angeblich wertvollen Informationen ändert daran nichts.

Wenn es strafbar wäre, hätte schon längst einer der Mods etwas dagegen getan bzw mich darauf hingewiesen. Außerdem sind laut Netiquette nur Links auf komerzielle Seiten verboten, die dem eigenen Nutzen dienen. Bei diesem System hat aber jeder was davon

Wenn jetzt aber ein Mod sagt, dass ich es rausnehmen soll, mache ich es sofort. Solange bleibt es!

@Turri
Wenn ich es so machen würde, wären wir ja gerade wieder da, wo wir jetzt sind. Dann brüchten wir pro User einen vHost. Genau das wollen wir aber nicht :)
 
Welchen Apache hast du am laufen?
Nen 1.3er, 2.0er oder 2.2er?
Windows oder Linux?

Um erstmal die grundlegenden Fragen zu klären ;)
 
Zuletzt bearbeitet:
Vorerst wird das ganze mal für Apache1.3 gemacht (Apache2 kommt später. 1.3 hab ich mich aber jetzt eingearbeitet :) )
Das ganze läuft momentan auf einem Debian Sarge. (weiß nicht, ob das bleibt.)
 
So wie mir das scheint, weiß keiner Rat :(

Dann heißt es wohl weiter rumprobieren (Die fehlgeschlagenen Versuche zähl ich schon garnimmer ^^)
 
Zurück