EWeBuKi
Der korrekte Titel dieses Artikels lautet „eWeBuKi“. Leider ist dieser Titel im MediaWiki aufgrund technischer Einschränkungen nicht möglich.
eWeBuKi ist ein in PHP entwickelter Bausatz zum erstellen modularer Webseiten.
Name
Der Name besteht aus den Anfangsbuchstaben der englischen Bezeichnung Easy Website Building Kit. (wörtlich übersetzt: Einfacher Webangebot Erstellungs Bausatz)
Kurzbeschreibung
Wie bei jedem anderen Content Management System werden Inhalte von Design und Technik getrennt. Die einzelnen Bereiche jeder Seite können einfach via Browser bearbeitet werden. Obwohl es bereits eine Vielzahl solcher Systeme gibt, wurde eWeBuKi entwickelt um grundsätzliche Probleme anderer CMS Systeme zu lösen.
Geschwindigkeit
Treu dem Motto "Keep it small and simple" (Halten Sie es klein und einfach) wurden nur unbedingt nötige Features integriert. Durch die Include Funtionalität von PHP, werden nur die Scripte interpretiert, die auch für die jeweilige Seite nötig sind. Dadurch wird im Durchnitt eine Seite innerhalb von 0,3 Sekunden, aus Datenbank und Template erstellt, und ausgeliefert.
Unabhängige Gestaltung
Durch zerlegen der Seite in beliebige Bereiche und rekursive Verarbeitung der Templates, kann eigentlich jedes Design in eWeBuKi umgesetzt werden. Um absolute Barrierefreiheit zu realisieren, ist es möglich gleichzeitig mehrere Templates zu verwenden. Parallele Designs ermöglichen, daß Aussehen zu ändern, ohne den Content zu verlieren. Wird der Content nur als Text mit Spezial Tags in der Datenbank abgelegt, ist die Ausgabe in jeder beliebigen Formatierung möglich (z.B. PDF).
Mehrsprachiger Betrieb
eWeBuKi verwaltet Content und Bilder mehrsprachig. Die gewünschte Sprache kann aus den Browser Infos des Benutzers ausgelesen, beziehungsweise über die URI mitggeteilt werden.
Eweiterungen
eWeBuKi stellt Variablen und den Datenbank Handle zu Verfügung. Der Entwickler programmiert innerhalb seiner Module wie er es gewohnt ist. Die einzige Einschränkung ist, Ausgaben nicht wie üblich mit echo oder print auszugeben, sondern mit Hilfe von Arrays dem Parser zu überlassen.
Suchmaschinen Tauglichkeit
eWeBuKi erstellt dynamische Internetseiten, die aber als solche von Suchmaschinen nicht zu erkennen sind. Die Inhalte werden über eine sprechende URL abgerufen und benötigen keine Cookies oder Sessions.
Führender Software Architekt von eWeBuKI ist Werner Ammon.
Philosophie bzw. Konzept von Ewebuki
Eewbuki möchte dem Web-Designer keine Grenzen setzen. Der Web-Designer sollte sein Design frei entwerfen, ohne in der Entwurfs-Phase bereits an die technische Umsetzung zu denken. Erst nach dem Abschluß der Design-Phase sollte mit Ewebuki an die technische Umsetzung heran gegangen werden.
Die technische Umsetzung mit Ewebuki beginnt damit, daß das Design in logische Bereiche aufgeteilt wird.
[...]
Begriffserklärung
Template --> siehe Template
Parser --> siehe Parser
Voraussetzungen
Ewebuki benötigt den Web-Server Apache (mit aktiviertem mod_rewrite), MySQL und PHP. Empfehlenswert ist die Installation von PHPMyAdmin um die MySQL Datenbank besser verwalten zu können.
Entwickelt, getestet und eingesetzt wird Ewebuki bisher auf Linux. Prinzipiell läuft aber Ewebuki auf jedem Betriebsystem welches die oben genannten Voraussetzungen erfüllt (Apache, MySQL und PHP). Für die Zukunft sind auch Tests mit Ewebuki unter FreeBSD geplant. Praktisch sollte Ewebuki aber auch auf anderen UNIX-System wie NetBSD oder auch Solaris laufen.
Installation
Es gibt zur Zeit grundsätzlich zwei Möglichkeiten Ewebuki zu installieren. Mit Hilfe eines TAR-Archivs oder mit Hilfe eines Software-Pakets. Zur Zeit befinden sich RPM-Pakete für SuSE Linux und Fedora Core im Test sowie ein DEB-Paket für Debian.
Im Augenblick muß Ewebuki nach der Installation (mittels TAR-Archiv, RPM oder DEB) mit Hilfe eines Shell-Skriptes konfiguriert werden. Es ist zukünftig geplant die Konfiguration komfortabel per Web-Browser zu erledigen.
Installation mit RPM
Für RPM basierte Linux Systeme wie z. B. Open SuSE, Fedora Core oder Mandriva gibt es RPM Installationspakete von Ewebuki. Diese können <hier> heruntergeladen werden.
Überprüfen der Voraussetzungen auf RPM Systemen
Vor der Installation des Ewebuki RPM-Paketes müssen die Installationsvorausetzungen überprüft werden. Folgende Pakete benötigt Ewebuki:
- MySQL
- PHP
- PHP-MySQL
- PHPMyAdmin (empfehlenswert, aber nicht zwingend erforderlich)
Auf RPM basierten Linux Distributionen wie z. B. SuSE, Fedora Core, Mandriva usw. kann dies folgendermassen überprüft werden:
[root@robin etc]# rpm -qa | grep -i httpd
httpd-2.2.2-1.0
[root@robin etc]#
[root@robin etc]# rpm -qa | grep -i php
php-mysql-5.1.4-1
php-pear-1.4.9-1.2
php-5.1.4-1
php-pdo-5.1.4-1
[root@robin etc]#
[root@robin etc]# rpm -qa | grep -i mysql
mysql-5.0.22-1.FC5.1
php-mysql-5.1.4-1
perl-DBD-MySQL-3.0004-1.FC5
mysql-server-5.0.22-1.FC5.1
[root@robin etc]#
Installation auf Fedora Core
Sollten Pakete nachinstalliert werden müssen, empfiehlt es sich diese mit Hilfe des Tools YUM nachzuinstallieren. YUM ist unter Fedora Core bereits vorkonfiguriert, in der Regel müssen hier keine weiteren Konfigurationsarbeiten vorgenommen werden.
Mit Hilfe des Befehls "yum search <paketname>" können die Repositories nach den entsprechenden Paketnamen durchsucht werden. z. B. "yum search mysql"
Mit "yum install <paketname>", z. B. "yum install php-mysql.i386" kann das entsprechende Paket nachinstalliert werden.
Nachdem alle erforderlichen Pakete für Ewebuki installiert wurden, kann Ewebuki selbst installiert werden. Dazu das EWebuki RPM für Fedora Core eWeBuKi-fc5-0.80-1.noarch.rpm unter ... herunterladen, und anschließend mit dem Befehl
rpm -i eWeBuKi-fc5-0.80-1.noarch.rpm unter
installieren.
Mit der Installation unter Fedora Core wurden folgende Verzeichnisse und Dateien angelegt:
/var/www/html/ewebuki
/usr/share/doc/ewebuki
/etc/httpd/conf.d/ewebuki.conf
Nach der Installation muß nun Ewebuki konfiguriert werden, siehe dazu Konfiguration.
Installation auf Open SuSE
Die Installation der erfoderlichen Pakete für Ewebuki (Apache, MySQL, PHP) kann unter Open SuSE komfortable mit dem Tool Yast erfolgen.
Nachdem alle erforderlichen Pakete für Ewebuki installiert wurden, kann Ewebuki selbst installiert werden. Dazu das EWebuki RPM für SuSE eWeBuKi-suse-0.80-1.noarch.rpm unter ... herunterladen, und anschließend mit dem Befehl
rpm -i eWeBuKi-suse-0.80-1.noarch.rpm
installieren.
Mit der Installation unter SuSE wurden folgende Verzeichnisse und Dateien angelegt:
/srv/www/html/ewebuki ???
/usr/share/doc/ewebuki ???
/etc/httpd/conf.d/ewebuki.conf ???
Nach der Installation muß nun Ewebuki konfiguriert werden, siehe dazu Konfiguration.
Installation unter Debian
Die Installation der erfoderlichen Pakete für Ewebuki (Apache, MySQL, PHP) kann unter Debian komfortable mit dem Tool dselect, apt-get, Synaptic etc. erfolgen.
Überprüfen der Voraussetzungen auf Debian basierten Systemen
Prüfen ob MySql installiert ist:
dpkg -l | grep -i mysql
Installation auf Debian mittels DEB-Paketen
Nach dem Herunterladen des Ewebuki DEB-Pakets kann dieses folgendermassen installiert werden:
dpkg -i ewebuki.deb
Nach der Installation muß Ewebuki mit Hilfe des Konfigurations-Skripts konfiguriert werden, siehe dazu Konfiguration.
Installation mittels TAR-Archivs
Auf Betriebssystemen (z. B. FreeBSD, NetBSD, Solaris usw.) für welche es (noch) keine Installationspakete gibt, kann Ewebuki mit Hilfe eines TAR-Archivs installiert werden.
Überprüfen der Voraussetzungen auf FreeBSD
Überprüfen der Voraussetzungen auf Solaris
Installation des TAR-Archivs
Nach dem herunterladen des Ewebuki TAR-Archivs ist dieses in das Web-Root Verzeichnis des Apache zu entpacken. Nach dem Entpacken muß Ewebuki mit Hilfe des Skriptes install_ewebuki.sh welches sich unter:
<Web-Root>/ewebuki/.../...
befindet konfiguriert werden.
Folgende Fragen müssen während des Konfigurationsvorgangs beantwortet werden:
- Name des MySQL Admin-Users
- Kennwort des MySQL Admin-Users (wird benötigt um die Ewebuki-DB innerhalb MySQL anzulegen)
- Name der Ewebuki MySQL Datenbank
- Benutzername des Ewebuki DB-Users
- Kennwort des Ewebuki DB-Users
- Pfad für das Web-Root Verzeichnis
- ...
Konfiguration
Nach der Installation von Ewebuki muß es konfiguriert werden.
Folgende Fragen müssen während des Konfigurationsvorgangs beantwortet werden:
- Name des MySQL Admin-Users
- Kennwort des MySQL Admin-Users (wird benötigt um die Ewebuki-DB innerhalb MySQL anzulegen)
- Name der Ewebuki MySQL Datenbank
- Benutzername des Ewebuki DB-Users
- Kennwort des Ewebuki DB-Users
- Pfad für das Web-Root Verzeichnis
- ...
Die gesamten Konfigurationsdateien von Ewebuki liegen unter:
<Web-Root>/ewebuki/conf
Inhalt des Verzeichnisses:
addon.cfg.php auth.cfg.php file.cfg.php kekse.cfg.php menu.cfg.php overwrite.cfg.php site.cfg.php
Folgendes kann in den jeweiligen Dateien konfiguriert werden:
Datei addon.cfg.php
- ...
Datei auth.cfg.php
- ...
Datei file.cfg.php
- ...
Datei kekse.cfg.php
- ...
Datei menu.cfg.php
- ...
Datei overwrite.cfg.php
- ...
Datei site.cfg.php
- Benutzername des Ewebuki DB-Users
- Kennwort des Ewebuki DB-Users
- Name der MySQL Datenbank
- Pfad für das Web-Root Verzeichnis
Konfiguration unter Fedora Core
Unter Fedora Core liegt das Konfigurations-Skript unter:
/usr/share/doc/ewebuki/ewebuki_configure_fc5.sh
Konfiguration unter Open SuSE
Unter Open SuSE liegt das Konfigurations-Skript unter:
/usr/share/doc/ewebuki/ewebuki_configure_suse.sh ???
Konfiguration unter Debian
Unter Debian liegt das Konfigurations-Skript unter:
/usr/share/doc/ewebuki/ewebuki_configure_deb.sh ???
Administration / Content-Pflege
Nachdem die Grundkonfiguration von Ewebuki durchgeführt wurde kann die default-Seite unter der URL http://<Host>/ewebuki/ aufgerufen werden.
Hier ein <Screenshot> der default Start-Seite von Ewebuki.
Es gibt wie in jedem anderen CMS-System auch zwei Arten von "Administratoren". Auf der einen Seite gibt es Benutzer welche den Inhalt der Web-Seiten pflegen, und auf der anderen Seite einen "vollwertigen" Verwalter welcher alle Freiheiten hat das System zu verwalten.
Content-Pflege
Sinn und Zweck eines CMS-Systems ist u. a. die Pflege einer umfangreichen Web-Seite zu vereinfachen und effizient zu gestalten. Dies geschieht dadurch, daß die inhaltliche Pflege an mehrere Personen delegiert werden kann. Dieser Personenkreis benötigt keine besonderen Kenntnisse wie HTML, PHP usw. und auch keine besonderen Software-Tools um diese Aufgabe erledigen zu können.
Zur Bearbeitung des Inhalts einer Web-Seite welche mit Ewebuki betrieben wird benötigt man nur einen Web-Browser.
Damit ein Benutzer den Inhalt der Web-Seiten ändern kann muß er sich erst mit Benutzername und Kennwort am System anmelden. Den Benutzern können unterschiedliche Rechte eingeräumt werden, z. B. welche Bereiche einer Web-Seite sie pflegen dürfen.
Die Anmeldung erfolgt mit Hilfe des Web-Browsers indem die (frei konfigurierbare) URL mit dem Login-Formular aufgerufen wird. Die URL könnte z. B. http://<host>/login.html lauten. Hier ein typischer <Screenshot> dazu.
Nach Eingabe des Benutzernames und des Kennworts und validierung dieser kann der Benutzer den Inhalt der Web-Seiten editieren. Dazu ruft er einfach die Seiten welche er editieren möchte im Web-Browser auf. Die aufgerufenen Seiten haben nun die Besonderheit im Vergleich zu einem gewöhnlichen Web-Seiten Besucher daß die editierbaren Bereiche mit einem kleinen roten Eck gekennzeichnet sind.
Durch Maus-Klick auf dieses rote Eck wird der Edit-Modus innerhalb des Browsers aufgerufen und der Inhalt kann editiert und anschließend abgespeichert werden.
Administration
[...]
Verzeichnisstruktur von Ewebuki
In den Verzeichnissen
- ./images
Hier werden die Bilder abgelegt.... (Format der Bilder?)
- ./images/default
- ./images/main
- ./css
- ./basic
- ./basic/libraries
- ./modules
Module?
- ./modules/admin
- ./modules/addon
- ./templates
Templates
- ./templates/default
- ./templates/main
- ./sql
- ./file
- ./file/archiv
- ./file/document
- ./file/new
- ./file/picture
- ./file/picture/big
- ./file/picture/medium
- ./file/picture/thumbnail
- ./file/picture/small
- ./file/picture/original
- ./conf
Hier werden die Konfigurationsdateien von Ewebuki abgelegt, siehe auch Abschnitt "Konfiguration" dort werden die einzelnen Konfigurationsdateien näher erläutert.
[...]
Dokumentation / Support
Die Dokumentation von Ewebuki ist - wie Ewebuki selbst - laufend Änderungen und Erweiterungen unterworfen. Um diesen Prozess im sinne des Open-Source Entwicklungsmodells bestmöglich zu unterstützen gibt es ein Wiki. Auf Grundlage der Informationen in diesem Wiki wird regelmäßig ein PDF-Handbuch erzeugt, welches <hier> herunter geladen werden kann.
Um den Informations- und Erfahrungsaustausch zwischen den Ewebuki Anwendern zu erleichtern wurde eine Mailing-Liste eingerichtet. Man kann sich folgendermassen an der Mailing-Liste anmelden:
[...]
Auf Wunsch besteht auch die Möglichkeit Support beim Entwickler einzukaufen.
Referenzen
Folgende Web-Seiten wurden mit Ewebuki implementiert:
- [...]
Stabilität
Auch wenn die Scripte seit einigen Jahren Perpetual Beta sind, sind diese produktiv in vielen Projekten im Einsatz.
OpenSource / Open Development
eWeBuKi ist in PHP geschrieben und unter der GNU General Public License lizenziert. Jeder ist herzlich eingeladen an der Weiterentwicklung teilzunehmen. Bug-Fixes oder neue Features werden gerne aufgenommen.
Die Ewebuki Quellen sind in einem CVS-System abgelegt und für jeden lesbar.
Hier die Daten für den Zugriff auf das CVS:
[...]
Für schreibenden Zugriff auf das CVS könnt ihr euch <hierhin> wenden.