Zum Inhalt springen

PHP-Nuke

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 8. Februar 2009 um 23:16 Uhr durch 85.179.23.165 (Diskussion). Sie kann sich erheblich von der aktuellen Version unterscheiden.
PHP-Nuke
Basisdaten

Entwickler Francisco Burzi
Aktuelle Version 8.1
Betriebssystem plattformunabhängig
Programmier­sprache PHP
Kategorie Webportal
Lizenz GPL (Freie Software)
deutschsprachig ja
phpnuke.org

PHP-Nuke ist eine kommerzielle Portal-Software, die Elemente eines einfachen Web Content Management Systems enthält. Es ist unter der GNU General Public License lizenziert. Kern des Skriptes ist eine Benutzerverwaltung sowie ein Artikelsystem für aktuelle Nachrichten.

PHP-Nuke ist eine webbasierende Anwendung, die zusätzlich zur Grundsoftware einen PHP-fähigen Webserver, z. B. Apache oder IIS, und PHP ab Version 4.x. benötigt. Das System unterstützt die Datenbanksysteme MySQL, mSQL, PostgreSQL, Adabas, Interbase und Sybase und die generische Anbindung unter ODBC.

Geschichte

Im Oktober 1999 wurde die erste Version (1.0) des heute bekannten PHP-Nuke-Systems veröffentlicht, das aus dem Projekt Thatware entstanden ist. Damals wurde PHP-Nuke noch für die Version 3.x von PHP geschrieben. Die aktuelle Version 8.1 ist vom August 2007.

Im Herbst 2004 flammte eine Diskussion über Lizenzverstöße Burzis mit dem Ergebnis auf, dass die Versionen bis einschließlich 7.5 kein sichtbares Copyright tragen müssen. Erst ab Version 7.6 muss das Copyright in der Fußzeile der Webseite sichtbar erhalten bleiben.

Softwarepaket

Funktionen der ersten Veröffentlichung

Die erste PHP-Nuke-Version war zweisprachig (Englisch/Spanisch). In der ersten Auflage gab es noch keinen modularen Aufbau des Systems. Dieser wurde erstmals mit der Version 5.0 im Jahr 2001 eingeführt. Dadurch wurde es möglich, eigene Module zu programmieren, die heute in unzähligen Erweiterungen für die eigene Webseite benutzt werden können.

Im heutigen Grundpaket sind die selben Funktionen enthalten wie in der ersten Version, jedoch wurde das System um ein Forum erweitert. Erst im Laufe der Zeit sind die eigenen Ur-Funktionen des Systems selbst zum Modul umgebaut worden.

Funktionen des Grundsystems heute

Die aktuelle Version von PHP-Nuke wird mit einer Reihe von Modulen ausgeliefert, die Funktionen zur Handhabung von Werbeflächen (sog. Werbe-Banner) ebenso ermöglichen wie die Verwaltung eines Fragen-und-Antworten-Katalogs, eines Kontaktformulars, der Mitgliederliste, eines Artikelsystems einschließlich eines Archivs, kategorisierter Downloads und Web-Links, Umfragensystems und einer systemweiten Suche. Benutzer können in einem sogenannten Journal einfache Weblogs erstellen, Artikel vorschlagen, persönliche Mitteilungen an andere Benutzer verfassen, die Website weiterempfehlen und Statistiken abrufen.

Das Layout der Website kann durch Themes angepasst werden.

Abgerundet wird das System durch eine Anpassbarkeit der Webschnittstelle an die jeweilige Landessprache (Lokalisierung), einem WYSIWYG-Editor und Hilfsmittel zur Datenbankverwaltung.

Technischer Aufbau

Die Möglichkeit durch zusätzliche Komponenten, die als Module bezeichnet werden und förmlich nur eingesteckt werden müssen, die eigene Webseite zu erweitern, macht das System äußerst flexibel. So gibt es heute Hunderte freier Module, vom Download-Script, Forum, Kalender und Photogalerie bis hin zum veröffentlichen externer Inhalte, wie etwa für das Open Directory Project oder per RSS von anderen Webseiten aktuell übermittelte Nachrichtenkurzbeschreibungen.

Erwähnenswert ist, dass viele von externen Entwicklern vorgelegten modularen Weiterentwicklungen hinsichtlich ihrer Funktionalität den in PHP-Nuke beiliegenden weit überlegen sind. An der Beibehaltung der teilweise veralteten Module, die überwiegend nur an die Versionen angepasst und gefixt wurden, wurde aber seitens des Hauptentwicklers Francisco Burzi erstaunlicherweise festgehalten.

Es existieren Tausende verschiedener Designs, die hier Themes genannt werden. Ergänzt durch sogenannte Blöcke, können vielfältige Informationen an jeder Stelle der Webseite relativ frei positioniert werden.

Auf Grund dieser Vielfältigkeit und der Unmenge an Einsatzgebieten als auch Modulen und Designs, ist dieses System sehr beliebt. Nicht zuletzt auch wegen des sehr einfach gehaltenen Quellcodes, der eigene einfache Erweiterungen auch durch Anfänger zulässt.

Sicherheit

PHP-Nuke ist wenig ausgereift und mit vielen Fehlern übersät, die seit langer Zeit von einer Version zur anderen mitgeschleppt werden. So werden bis heute immer wieder grobe Sicherheitslücken innerhalb des Systems bekannt. Die Portierung des phpBB-Forum stellt ein gravierendes Sicherheitsproblem in PHP-Nuke dar. Allein im Jahr 2005 wurden mindestens 10 gravierende Sicherheitslücken bekannt. Die deutsche und internationale Nukeszene hat daher innere Sicherheitsmechanismen entwickelt um bei Sicherheitsproblemen schnell Fehlerbehebungen zur Verfügung stellen zu können und verfügt über ein funktionierendes Sicherheitssystem. Die Frequenz der Notwendigkeit Sicherheitsfixe einzuspielen überfordert allerdings viele Webmaster mit allen bekannten Folgen, die deshalb erfolgreiche Hackerangriffe haben können.

Ein wichtiger Ansatz, die in PHP-Nuke enthaltenen Sicherheitslücken zu schließen ist die Entwicklung von Protektorensystemen. Die in Deutschland am häufigsten (auch gemeinsam) eingesetzten Systeme sind die NukeSentinel und NukeHackerTrap sowie AdminSecure, das jedoch für neuere Nuke-Versionen ab 7.5 nicht mehr zur Verfügung steht.

Abspaltungen

Aufgrund der laufenden Versionssprünge mit Abwärtsinkompatibilität und den sich 2003 abzeichnenden erheblichen Sicherheitsproblemen aufgrund von Programmierfehlern entschlossen sich einige deutsche Entwicklergruppen, auf der Basis der PHP-Nuke Version 5.5 eigene Projekte zu entwickeln. Beginnend mit so genannten VKP (Wortschöpfung geschaffen 2001 von Jens Ferner, steht für „vorkonfiguriertes Paket“) gingen die Projekte in Abspaltungen über oder werden heute als völlig eigenständige Webportalsysteme betrachtet, die aber allesamt hinsichtlich ihrer gewollten Kompatibilität noch in der Nähe von PHP-Nuke angesiedelt sind. Die als Begriff immer noch bekannten VKP existieren in dieser Form in Deutschland nicht mehr, sie sind im Nachhinein als Entwicklungsstufe zu sehen.

Beispiele für Abspaltungen sind Nuke Evolution, OpenPHPNuke, PragmaMx, CPG Dragonfly, Xaraya, Xoops oder auch phpWebSite.

Literatur