Start
Hintergrund / FAQ
Das Gütesiegel
Mitmachen
Anleitungen
Forum
Über uns
Kontakt
Serendipity Drucken E-Mail

Die Blog-Software Serendipity ohne IP-Protokollierung.

In PHP Skripten wird die IP im Regelfall über $_SERVER['REMOTE_ADDR'] abgefragt, das ist eine globale Variable, in der die IP Adresse im Regelfall steht. Serendipity greift in der 1.2 beim Speichern von Kommentaren ebenfalls auf diese Variable zu, in includes/functions_comments.inc.php, Zeile 565:

$ip            = serendipity_db_escape_string(isset($commentInfo['ip']) ? $commentInfo['ip'] : $_SERVER['REMOTE_ADDR']);

Das kann man einfach ersetzen, indem man die globale Variable rauswirft und z.B: 127.0.0.1 einsetzt:

$ip            = serendipity_db_escape_string(isset($commentInfo['ip']) ? $commentInfo['ip'] : "127.0.0.1");

Insgesamt wird an neun Stellen in Serendipity auf diese Variable zugegriffen, man kann nun also alle Stellen suchen und dort die Variable durch beliebige Inhalte ersetzen. Der Ansatz geht natürlich bei jeder anderen Software, aber man tippt sich irgendwann die Finger wund. Einfacher geht es mit einem zentralen Ansatz: Die globale Variable $_SERVER['REMOTE_ADDR'] ist eine Variable wie jede andere auch, das heisst: Man kann sie genausogut auch überschreiben. Man nimmt sich also eine Datei -sofern vorhanden, bei modernen CMS ist dies eigentlich immer der Fall- die als erstes in wirklich jeder Datei geladen wird. In Serendipity ist dies etwa die serendipity_config.inc.php. Hier als erstes in der Datei nun die globale Variable ändern:

$_SERVER['REMOTE_ADDR'] = "127.0.0.1";

Quelle