. [ Show ] in English
Manipulating apache logs
Some of you know the problem.
How can you deactivate or manipulate the apache logs?
The whole procedure is not that difficult and so i’ll explain it quickly.
In general apache creates two logfiles per default. These are error.log and access.log.
We deal mainly with access.log, because the important stuff is logged here.
We can find it at /apache2/logs/.
I’ll show you an extract, that you can see what is logged there:
93.221.465.157 – - [14/Feb/2009:06:43:56 +0100] “GET /index.php?s=test HTTP/1.1″ 200 806
I’ll explain the content later.
We’ve to search the file httpd.conf, so that we can manipulate the content.
When using windows or linux, the file is located in /apache2/conf/
Now we’ve to open the file and search the line beginning with “LogFormat”:
It could look as follows:
LogFormat “%h %l %u %t \”%r\” %>s %b \”%{Referer}i\” \”%{User-Agent}i\”” combined
Various values are saved, contain the data which will be saved in Access_log.
Name of variables Anzeigen
%h > Remote host
%l > Remote logname of identd
%u > Remote user
%t > Time
%b > Sent bytes (without HTTP-Header)
%r > Request
%{Referer}i\” > Content of referer
\”%{User-Agent}i\” > Content of User-agents
Now you can choose, what will be logged.
You can define a fix value as well, by substituting the variable with text. In this case i replaced the
variable %h with 127.0.0.1:
LogFormat “127.0.0.1 %l %u %t \”%r\” %>s %b \”%{Referer}i\” \”%{User-Agent}i\”” combined
Because of this substitution, it’s only shown your choosen IP
Of course you can also delete everything, so that nothing is displayed anymore.
You’ve to apply the changes to every “LogFormat”, so that every logfile is updated with your changes.
When you’ve saved the file, you just have to restart apache.
Manche von euch werden das Problem kennen.
Wie schaltet man auf einen Apacheserver die Logs aus oder manipuliert sie?
Das ganze ist eigentlich ganz einfach, daher kann man das in paar Zeilen gut erklären.
Apache erzeugt Standardmäßig Zwei Logdateien. Einmal die error.log und die Access.log. Wir beschäftigen uns hier hauptsächlich mit der Access.log. Da hier die wichtigsten Sachen geloggt werden.
Die Log Dateien finden wir unter /apache2/logs/.
Damit Ihr seht, was dort gespeichert wird, zeige ich einen Auszug:
93.221.465.157 – - [14/Feb/2009:06:43:56 +0100] “GET /index.php?s=test HTTP/1.1″ 200 806
Zum Inhalt kommen wir später nochmal.
Damit wir jetzt den Inhalt manipulieren können, müssen wir als erstes die Datei httpd.conf suchen.
Bei Windows und Linux befinden sich die Datei im /apache2/conf/
Nun müssen wir die Datei öffnen und die Zeile suchen, die mit LogFormat beginnt:
Die Zeile sieht dann wie folgt aus:
LogFormat “%h %l %u %t \”%r\” %>s %b \”%{Referer}i\” \”%{User-Agent}i\”” combined
Dort werden jetzt mehrere Variablen aufgerufen, die dafür sorgen was in der Access_log gespeichert wird.
Bezeichnung der Variablen Anzeigen
%h > Entfernet Host
%l > Entferner Logname von identd
%u > Entfernter Benutzer
%t > Zeit
%b > Gesendete Bytes (ohne HTTP-Header)
%r > Request
%{Referer}i\” > Inhalt des Referer
\”%{User-Agent}i\” > Inhalt des User-agents
Nun könnt Ihr euch aussuchen, was nun alles geloggt wird.
Ihr könnt auch einen festen Wert zuweisen indem Ihr eine Variable durch einen festen Text ersetzt. Hier im beispiel habe ich die Variable %h durch 127.0.0.1 ersetzt:
LogFormat “127.0.0.1 %l %u %t \”%r\” %>s %b \”%{Referer}i\” \”%{User-Agent}i\”” combined
Durch diese veränderung, wird in der Logdatei nur die von euch angegebene IP angezeigt
Natürlich könnt Ihr dort auch alles löschen, damit garnicht mehr angezeigt wird.
Die veränderung müsst Ihr für alle LogFormat übernehmen, damit auch in jeder Datei eure manipulierte log gespeichert wird.
Wenn Ihr die Datei nun gespeichert habt, müsst Ihr nurnoch den Apache neu starten .
Player Sonstiges