Mailinglisten-Archive |
Hallo Liste, weil mir grad ein wenig langweilig ist wollte ich mal nen kleines Script schreiben was mir die IP-Adressen, sowie den Zeitpunkt wann der Zugriff erfolgte, raussucht wenn die Anfrage von einem Code Red erfolgte. Doch irgendwie habe ich mich in den Apachelogs verirrt :). Ich war schon soweit das ich wenigstens die einzelnen Zeilen des Logs in einem Array habe. <schnipp> $filename = "/var/log/httpd/access_log"; $fd = fopen ($filename, "r"); $contents = fread($fd, 10000); fclose ($fd); $array_content = explode ("\n", $contents); </schnipp> Tja, und ab da endet mein wissen von Arrays ... und besonders RegExp ... nun habe ich in jedem Arrayelement, welches eine Anfrage von CodeRed enthält, einen Eintrag folgender Form: 111.111.111.111 - - [01/Aug/2001:19:06:30 -0400} "GET /default.ida?XXXXXblabla HTTP/1.0" 400 353 "-" "-"\n Nun meine eigentliche Frage: Wie stelle ich es nun an das in dem Array wo ja noch alle Anfragen drin sind, auch die guten ;), nur noch die CodeRedanfragen drin sind? Also ein Arrayelement welches nicht auf die regexp passt die, ich noch nicht habe ;), den string default.ida enthält? Für jede Anregung dankbar, Olaf
php::bar PHP Wiki - Listenarchive