EWeBuKi

Aus Port23Wiki
Wechseln zu: Navigation, Suche

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.

Inhaltsverzeichnis

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.

Weblinks

Meine Werkzeuge