Hallo,
ich habe ein eher größeres Problem bei einem Script.
Ich programmiere momentan einen Download-Manager (nicht Programm mit C++ & co sondern mit PHP, zum Downloaden von Dateien für User :wink: ).
Nun mein Problem:
Ich möchte die Anzahl aktueller Zugriffe auf die Datei (z.B. test.exe) auslesen und die IP aller, die gerade diese Datei "bescheinigen" bzw. Downloaden.
Ich dachte jetzt schon, dass ich die Apache-Log auslese.
Die ist ja folgendermassen:
also müsste ich die Log erst mal nach allen durchsuchen, die /xxx/test.exe nutzen und die größe der datei (hinterste zahl) kleiner ist, als die grösse von test.exe), dann müsste ich das cutten.
erst hostname, dann die zusätzlichen sachen ( - ), die zeit, das GET, ob 200 oder fehler passiert ist und die anzahl bytes, die der user empfangen hat.
Dann müsste ich schauen, ob keine Fehler passiert sind (200 im obigen beispiel, ansonnsten würde ja z.B. 404 erscheienn wenn es die Datei nicht geben würde), und danach, ob der user alle daten erhalten hat. Und das ganze etwa eine stunde zurück. (viele haben ja noch Modem und können noch nicht sehr shcnell downloaden).
Oder wie müsste ich da smachen? udn wie lese ich die access_log aus?
Infos zum System:
SuSE Linux 8.2
Apache 1.3.27
PHP 5.0.3
PHPInfo
ich habe ein eher größeres Problem bei einem Script.
Ich programmiere momentan einen Download-Manager (nicht Programm mit C++ & co sondern mit PHP, zum Downloaden von Dateien für User :wink: ).
Nun mein Problem:
Ich möchte die Anzahl aktueller Zugriffe auf die Datei (z.B. test.exe) auslesen und die IP aller, die gerade diese Datei "bescheinigen" bzw. Downloaden.
Ich dachte jetzt schon, dass ich die Apache-Log auslese.
Die ist ja folgendermassen:
Code:
hostname - - [02/Mar/1997:05:03:49 -0500] "GET /xxx/test.exe HTTP/1.0" 200 1788
erst hostname, dann die zusätzlichen sachen ( - ), die zeit, das GET, ob 200 oder fehler passiert ist und die anzahl bytes, die der user empfangen hat.
Dann müsste ich schauen, ob keine Fehler passiert sind (200 im obigen beispiel, ansonnsten würde ja z.B. 404 erscheienn wenn es die Datei nicht geben würde), und danach, ob der user alle daten erhalten hat. Und das ganze etwa eine stunde zurück. (viele haben ja noch Modem und können noch nicht sehr shcnell downloaden).
Oder wie müsste ich da smachen? udn wie lese ich die access_log aus?
Infos zum System:
SuSE Linux 8.2
Apache 1.3.27
PHP 5.0.3
PHPInfo
Kommentar