PHP php logger

hallo geehrte community,

ich habe vor den traffic auf meine webpräsenz http://justizio.at mit den endunden .de und .info, anhand eines php scripts zu protokollieren. Hierbei möchte ich die IP des visitors, OS, verwendeter Browser und Uhrzeit datum speichern. Das ganze möchte ich in ein txt file speichern. Nun lautet meine frage, kann ich das txt file vor unbefugtem zugriff schützen? und wäre es eurer meinung nach sinnvoller das logging anhand einer datenbank zu realisieren???


edit: zu meiner ersten frage wäre beizufügen, ob ein .htaccess file, das logfile nicht auch vor dem php script schützt.

gruß kalil
 
Zuletzt bearbeitet:
Nun lautet meine frage, kann ich das txt file vor unbefugtem zugriff schützen?
Am besten einfach ausserhalb des Document-Roots lagern.

und wäre es eurer meinung nach sinnvoller das logging anhand einer datenbank zu realisieren???
Kommt auf den Zweck an. Um Informationen zu parsen sind Datenbanken sicher flexibler.

edit: zu meiner ersten frage wäre beizufügen, ob ein .htaccess file, das logfile nicht auch vor dem php script schützt.
Nein.
 
ok. super danke. noch eine weitere Frage: und zwar,

wenn ich die stammseite index.html habe. und dann ein php-script erstelle welches eine function beinhaltet, die wiederum den log durchführt an als übergabeparameter die reservierten variablen wie http_referer, remote_addr......... etc benötigt, kann ich dann wie folgt vorgehen???

Ich binde mein log.php welches die funktion beinhaltet mit php-include in mein index.html ein. Dann ruf ich innerhalb der index.html die funktion log(parameter1, parameter2, etc) auf.
funktioniert das so? oder wird die funktion bereits durch das einbinden der log.php ausgeführt??
 
Naja, jein. Prinzipiell wird eine PHP-Datei, welche durch include() eingebunden wird direkt ausgeführt. Falls du allerdings nur eine Funktion darin hast (also keinen direkten prozeduralen Code), wird diese Funktion nur registriert, nicht aber ausgeführt. Das bedeutet, nach dem inkludieren dieser Funktion kannst du sie wie erwähnt verwenden.
(Ich weiss nicht ob du dir im klaren bist, dass in deinem Beispiel dein Server so konfiguriert werden muss, dass HTML-Dateien auch durch den PHP-Parser gejagt werden. Nur so als Nebenbemerkung :))
 
nein war mir ehrlich gesagt deswegen nicht im klaren. weiß auch nicht ob der server auf dem mein projekt gehostet wird dies unterstützt. php funzt mal. also wärs nach deiner jetzigen aussage besser eine index.php anzulegen welche das logscript einbindet, die logfunktion aufruft(und ihr die entsprechenden $SERVER daten übergibt und anschließend auf die index.html weiterleitet?????

ich danke dir für deine unterstützung..
 
Das wäre einfacher, ja. Aber du kannst doch in deine index.php auch normalen HTML Code reinschreiben. Am einfachsten wäre es, einfach nur eine index.php zu haben die den Log-Krams wie beschrieben ausführt und die Seite anzeigt.
 
Zurück
Oben