PHP-Nuke
PHP-Nuke | |
---|---|
Basisdaten
| |
Entwickler | Francisco Burzi |
Aktuelle Version | 8.1 |
Betriebssystem | plattformunabhängig |
Programmiersprache | 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
- Markus Chr. Koch: Das Nukebook. MITP-Verlag, Juni 2004, ISBN 3-8266-1392-9
- Chris Karakas, Claudio Erba: PHP-Nuke: Management and Programming
- Rene Kiesler: An interview with Francisco Burzi
- Jens Ferner: PHPNuke. Vieweg Juni 2004, ISBN 3-528-05848-X
Weblinks
- offizielle Website (englisch)
- Linkkatalog zum Thema PHP-Nuke bei curlie.org (ehemals DMOZ)
- deutschsprachige Hilfe