Zuverlässigkeit eingebaut

Willkommen bei Geeklog
Mittwoch, 08. Februar 2012, 22:42 Uhr

Geeklog und register_globals=off

Geeklog

Als eines der häufigsten Probleme bei der Installation von Geeklog hat sich in letzter Zeit die Einstellung register_globals=off in der php.ini-Datei von PHP herausgestellt. Seit PHP 4.2.0 ist diese Einstellung nämlich der Default. Wenn man schon bei der Installation von Geeklog nicht über die erste Seite der Installationsskripts hinaus kommt, dann hat man genau dieses Problem ...

Worum geht es? Die Macher von PHP sind zu der Auffassung gelangt, dass Variablen, die über einen GET- oder POST-Request an ein PHP-Skript übergeben werden, nicht mehr automatisch als globale Variablen zur Verfügung stehen sollten, sondern dass man sie stattdessen aus speziell dafür vorgesehenen Arrays auslesen solle. Wer beim Schreiben eines Artikels schon einmal auf die URL-Zeile des Browsers geachtet hat, wird dort z.B. eine URL finden, die auf "story.php?mode=edit" endet. Dies bedeutete in PHP bisher, dass in dem Skript story.php eine globale Variable $mode mit Wert "edit" existierte. Dies wird jedoch als potenzielles Sicherheitsproblem angesehen soll daher künftig vermieden werden (Details finden sich z.B. in den Release Notes zu PHP 4.1.0).

Leider ist nun aber der Code von Geeklog schon etwas älter und verlässt sich weitgehend darauf, dass derartige globale Variablen existieren. Ein Umschreiben ist sicher nicht unmöglich, aber sehr, sehr viel Arbeit. Daher wird Geeklog bis auf Weiteres nur funktionieren, wenn man in der php.ini register_globals=on gesetzt hat. Dies ist (derzeit) auch noch die Defaulteinstellung bei praktisch allen Webhostern, da sonst auch viele andere PHP-Skripte nicht mehr funktionieren würden.

Im CVS befindet sich bereits eine Version von Geeklog, bei der die Installation, das Einloggen sowie die User-Einstellungen auch bei register_globals=off funktionieren - sonst aber nicht viel, d.h. insbesondere kann man dann auch keine Artikel oder Kommentare schreiben. Diese Änderungen waren mehr eine Übung, um den erforderlichen Aufwand für eine Umstellung besser abschätzen zu können. Und die Abschätzung ist eben, dass es sehr viel Aufwand ist und einige Zeit in Anspruch nehmen wird.

Das Geeklog-Team hat noch nicht entschieden, ob es diese Umstellung überhaupt in Angriff nehmen wird, oder ob es das Problem nicht besser bei der ohnehin geplanten nächsten großen Geeklog-Version 1.4 von vornherein im Design berücksichtigen wird. Natürlich hätten wir aber auch nichts dagegen, wenn sich vielleicht ein paar Freiwillige melden würden, die bei der Umstellung helfen wollen ...

bye, Dirk

Geeklog und register_globals=off | 5 Kommentar(e) | Neuen Account anlegen
Die folgenden Kommentare geben Meinungen von Lesern wieder und entsprechen nicht notwendigerweise der Meinung der Betreiber dieser Site. Die Betreiber behalten sich die Löschung von Kommentaren vor.
Geeklog und register_globals=off
Autor: Kuala am Dienstag, 03. Dezember 2002, 18:57 Uhr

In der Zwischenzeit ist einiges an Zeit vergangen, die Globals verdünnen sich immer mehr und mit register_globals=on komme ich auch nicht mehr weiter. Wie sieht es denn in der Zwischenzeit aus?

Schon Neuigkeiten?


-K-

Geeklog und register_globals=off
Autor: Dirk am Dienstag, 03. Dezember 2002, 22:18 Uhr

Was genau war jetzt eigentlich die Frage?

Geeklog 1.3.x wird auch weiterhin register_globals=on benötigen - es sind einfach zu viele Änderungen. Zudem würde eine Umstellung einfach auch einen immensen Testaufwand mit sich bringen - man müsste praktisch allen Code neu testen. Die Menge an Zeit und Arbeit, die dafür nötig wäre, investieren wir dann doch lieber in die Weiterentwicklung.

Geeklog 2, wie das Nachfolgeprojekt mittlerweile getauft wurde, wird diese und andere Altlasten abschütteln, aber bis dahin ist es noch eine Weile. Den Fortschritt dieses Projekts kann man unter geeklog.net verfolgen.

bye, Dirk

Geeklog und register_globals=off
Autor: Kuala am Mittwoch, 04. Dezember 2002, 10:02 Uhr

Gut, dann harre ich mal auf Version 2. register_globals=on kann/möchte ich nicht mehr verwenden. Ich habe ein wenig damit rumgespielt und was man da an Mist bauen kann ist unglaublich. Well... so soll es ein. :-/


-K-

Geeklog und register_globals=off
Autor: Dirk am Mittwoch, 04. Dezember 2002, 14:54 Uhr

Die Gefahren von register_globals=on werden m.E. ziemlich übertrieben. Wer Code produziert, der sich damit \"austricksen\" lässt, der hat noch ganz andere Probleme ...

Natürlich kann man Geeklog derzeit nicht benutzen, wenn man register_globals nicht auf \"on\" schalten kann bzw. darf oder wenn Geeklog mit Software coexistieren soll, die register_globals=off fordert (auch das gibt es mittlerweile) - das will ich gar nicht bestreiten.

bye, Dirk

Geeklog und register_globals=off
Autor: Kuala am Samstag, 23. Oktober 2004, 00:37 Uhr

Jetzt ist doch einiges an Zeit vergangen. verstehe ich das so richtig das sich in Sachen register_globals noch nicht so viel getan hat? Nur neugierig... ;-)


Kuala