Sven Rautenberg: Apache access.log Dateien ausschliessen??

Beitrag lesen

Moin!

Mir geht es eigentlich nicht um das Entwickeln sondern für den späteren Produktionseinsatz.

Produktive Webserver produzieren große Logfiles - das ist Gesetz! Dagegen hilft auch nicht, wenn man Statuscode-304-Zeilen aus dem Logging ausschließt. Das macht die Dateien nicht entscheidend kleiner, sie werden immer noch sehr groß werden.

Wenn du ein Problem mit großen Logfiles hast, dann installiere Systeme, die mit großen Logfiles umgehen können.

Bedenke: Auch ein 304 hat ja eine Relevanz. Es ist ein Hit, also ein vom Server zu beantwortender Request, was bei Lastanalysen wichtig ist. Und außerdem bilden Logfiles ja in gewisser Weise die Währung der Werbewirtschaft (auch wenn die sich mittlerweile ihre eigenen Zähler gebaut haben).

Wie ging das nochmals das der Browser nicht immer nach den aktuellen Versionen nachfrägt?

Diese Option ist irrelevant für produktive Webserver. Du wirst ja wohl kaum hinkriegen, dass alle User ihre Browsereinstellungen abändern, nur damit du dein Logfile klein behälst.

War das nicht etwas mit dem http Header?

Nein, absolut nicht. In Opera z.B. "Tools -> Preferences -> Advanced -> History: Check if cached page is updated on the server. Documents 'always' - Images 'every hour'". So ist das bei mir eingestellt. Und so hat es vermutlich jeder Webdeveloper mindestens eingestellt, weil er beim Reload sofort die aktuellste Version sehen will.

Normal wäre - und das ist, was du ja erreichen willst - dass der Browser beim normalen Surfen erst nach einer gewissen Zeit überhaupt checkt, ob seine Cacheversion noch aktuell ist.

Und muss ich das dann in alle meine PHP Dateien des Projekts einbinden?

Nein.

Zum Logging nochmals:
Kennst du dich damit auch aus.
Was ich bis jetzt gefunden habe:
Man kann wohl in der httpd.conf Umgebungsvariablen setzen und diese dann vom Logging ausschliesen.

SetEnv Remote_Addr 127.0.0.1 nolog
CustomLog /var/log/apache2/access.log.domain common env=!nolog

Wie müsste die Syntax aber wohl für Dateien sein?
SetEnv Files "*.js" "*.css" nolog   ????

Wie gesagt: Ich halte es für idiotisch, Logfiles beim Entstehen zu filtern. Und erst Recht ist es idiotisch, basierend auf Dateinamen zu filtern. Damit verhinderts du ja auch, Status 200 zu loggen.

Sorge für eine effektive Verarbeitung der Logfiles hinterher. Wo gibts da Probleme?

- Sven Rautenberg

--
"Love your nation - respect the others."