MiniMate - Ein Verwaltungswerkzeug f�r MiniVend
***********************************************
MiniMate, vormals MaxiVend genannt, ist ein WWW-Frontend f�r MiniVend.
Programmiert wurde MaxiVend von Mike Heins, dem Autor von MiniVend. MiniMate
erlaubt es, die folgenden Aufgaben auf einfache Art und Weise durchzuf�
hren:
* MiniVend-Datenbanken editieren (z.B. Spalten l�schen und hinzuf�gen
[nur f�r Version 4.0 g�ltig])
* Seiten und andere Dateien (z.B. Bilder) holen und ablegen
* eigene Benutzerverwaltung und Zugriffskontrolle [nur f�r Version 4.0 g�
ltig]
* ...
Lizenz
******
F�r MiniMate gelten die Bedingungen der GPL (URL:
http://www.gnu.org/copyleft/gpl.html).
Startseite, Version und Download
********************************
Die neuesten Informationen �ber MiniMate werden auf
http://www.linuxia.de/minimate/ zur Verf�gung gestellt. Wenn Sie �ber
aktuelle Entwicklungen informiert werden m�chten, schreiben Sie bitte eine
Email an <
[email protected]>.
Die Version von MiniMate ist z.Z. `4.0.0.1'. Ein Archiv mit dieser Version
kann von dieser Website (URL: minimate.tar.gz) und von ftp.minivend.com (URL:
ftp://ftp.minivend.com/pub/minimate/minimate.tar.gz) (t�glich aktualisiert)
heruntergeladen werden und ist f�r alle Betriebssysteme geeignet.
MiniVend 4.00 oder aktueller wird f�r den Betrieb von MiniMate ben�tigt.
Zus�tzlich wird eine �ltere Version von MiniMate f�r die 3.x-Serie von
MiniVend zur Verf�gung gestellt. Diese kann als MiniMate-3.14.0.3.tar.gz
heruntergeladen werden und erfordert mindestens MiniVend Version 3.12.
Demonstration
*************
MiniMate kann getestet werden unter den folgenden Adressen:
http://www.linuxia.de/mmdemo/simple/admin/menu (URL:
http://www.linuxia.de/mmdemo/simple/admin/menu)
http://www.linuxia.de/mmdemo/simple/config/menu (URL:
http://www.linuxia.de/mmdemo/simple/config/menu)
Installation
************
Zun�chst packen Sie das Archiv in einem beliebigen Verzeichnis (nicht im
Installationsverzeichnis von MiniVend) aus:
[email protected]:/tmp > gzip -cd minimate.tar.gz | tar -xf -
L�uft der Rechner unter Linux oder wird GNU tar verwendet, gen�gt:
[email protected]:/tmp > tar -xzf minimate.tar.gz
Nach dem Auspacken des Archivs wechseln Sie in das Verzeichnis `
MiniMate-4.0.0.1'. Dann starten Sie das `install'-Skript mit dem
Installationsverzeichnis von MiniVend als Parameter:
[email protected]:/tmp/MiniMate-4.0.0.1 > perl install ~/mvend
Das Skript �berpr�ft das Verzeichnis auf das Vorhandensein der `
minivend.cfg', erzeugt ein Unterverzeichnis `lib/MiniMate' im
Installationsverzeichnis und kopiert die ben�tigten Dateien in dieses
Verzeichnis.
Nun editieren Sie `minivend.cfg' und f�gen die folgende Zeile hinzu:
#include lib/MiniMate/minimate.cfg
Nach einem Neustart von MiniVend steht nun das Verwaltungswerkzeug zur Verf�
gung. Es kann von jedem Katalog darauf zugegriffen werden, und zwar �ber die
Seiten `admin/menu.html' (mit Frames) bzw. `config/menu.html' (ohne Frames).
Lautet die URL f�r den Zugriff auf den Katalog beispielsweise `
http://linuxia.de/cgi-bin/simple', ist die einfachere Variante von MiniMate
unter `
http://linuxia.de/cgi-bin/simple/config/menu' zu erreichen.
Bitte beachten Sie, da� zur Zeit die Schutz des Verwaltungswerkzeug vor
unerlaubten Zugriff Ihnen liegt.
Probleme bei der Installation
=============================
`Term::ReadKey' vermisst `resize'
---------------------------------
Can't exec "resize": No such file or directory at /usr/lib/perl5/site_perl/Term/ReadKey.pm line 305.
Unable to get Terminal Size. The TIOCGWINSZ ioctl didn't work.
The COLUMNS and LINES environment variables didn't work.
The resize program didn't work. at /usr/lib/perl5/site_perl/Term/ReadKey.pm line 323.
make: *** No targets. Stop.
Das ist ein bekanntes Problem mit Perl und MakeMaker unter Solaris. Weitere
Berichte gibt es �ber Linux-Installationen unter X (Slackware und SuSE).
Mike Heins hat den folgenden Ausweg vorgeschlagen:
export LINES=24 COLUMNS=80
oder (f�r Korn und �hnliche Shells)
setenv LINES=24
setenv COLUMNS=80
Eine Alternative ist die Deinstallation von `Term::ReadKey'.
Sicherheit
**********
Das Verwaltungswerkzeug sollte nur dem jeweiligen Shopbesitzer zug�nglich
sein.
Zugriffsschutz mittels Apache
=============================
Um den Zugriff auf die MiniMate-Seiten ohne Passwort zu unterbinden, wird
zun�chst Apache entsprechend konfiguriert:
<LocationMatch /cgi-bin/simple/+(admin|config)>
AuthType Basic
AuthUserFile /home/minivend/users
AuthName "MiniVend Administration"
require valid-user
</LocationMatch>
Das Pluszeichen ist wichtig, da sonst der Zugriff �ber `
/cgi-bin/simple//config/menu.html' nicht passwortgesch�tzt ist. Der
Benutzername des Shopbesitzers wird in die Katalogkonfigurationsdatei `
catalog.cfg' eingetragen:
RemoteUser minivend
Damit MiniVend dem Shopbesitzer den Zugriff auf die MiniMate-Seiten
gestattet, legen wir in den Verzeichnissen `config' und `admin' zun�chst
eine leere Datei `.access' an:
[email protected]:~ > rm -f /home/minivend/lib/MiniMate/pages/config/.access
[email protected]:~ > touch /home/minivend/lib/MiniMate/pages/config/.access
[email protected]:~ > rm -f /home/minivend/lib/MiniMate/pages/admin/.access
[email protected]:~ > touch /home/minivend/lib/MiniMate/pages/admin/.access
In den gleichen Verzeichnissen legen wir eine Datei `.access_gate' an, die
dem durch Apache authentifizierten Benutzer den Zugriff gestattet:
*: [perl arg="config" interpolate=1]
return 1 if $Safe{config}{RemoteUser} eq q{[data session user]};
return 0;
[/perl]
Zugriff �ber den internen Webserver
===================================
Eine nichtleere Datei mit dem Namen `.access' wird in allen Verzeichnissen,
die MiniMate-Seiten enthalten, angelegt und signalisiert MiniVend Seiten in
diesen Verzeichnissen nur dem jeweiligen Shopbesitzer anzuzeigen.Der
Shopbesitzer wird durch die Direktiven `RemoteUser' und `Password' in der
Katalogkonfiguration festgelegt:
Variable MV_NO_CRYPT 1
RemoteUser demo
Password Gu3109n
Der Shopbesitzer greift auf die MiniMate-Seiten �ber den internen Webserver
von MiniVend zu:
http://www.linuxia.de:7786/simple/config/menu
Benutzung von MiniMate
**********************
Bilder hochladen
================
Hochgeladene Dateien k�nnen nur unterhalb des Katalogverzeichnisses abgelegt
werden. Aus Sicherheits- und Datenschutzgr�nden verweigert man normalerweise
dem Webserver den Zugriff auf Dateien im Katalogverzeichnis. Um das
Hochladen von Bildern mit MiniMate zu erm�glichen, mu� man diese goldene
Regel jedoch durchbrechen. Es sollte jedoch nur das Unterverzeichnis mit den
Bildern freigegeben werden.
Zum Hochladen von Bildern w�hlen Sie auf der Seite `config/menu' "Andere
Dateien holen/ablegen".
Probleme
********
Schnelle bin�re Suche
=====================
Benutzt man die schnelle bin�re Suche (vgl. die MiniVend-Dokumentation, Fast
Binary Searching) und editiert man Datenbanktabellen mit MiniMate, wird der
Index f�r die bin�re Suche nicht aktualisiert. Dies ist der Fall f�r das `
simple'-Demo. Dort gibt es einen Index `category' f�r die `products'
-Datenbank. Als Abhilfe greift man nach dem Bearbeiten mit MiniMate einfach
auf eine MiniVend-Seite, die der folgenden entspricht, zu:
<HTML><HEAD><TITLE>Index Update</TITLE></HEAD>
<BODY>
[index table=products
extension=category
spec="rf=category,0
ra=yes
tf=category"
]
</BODY>
Eingabe von Daten mit ' schl�gt fehl
====================================
Dieser Fehler tritt bei der Verwendung von MiniVend 3.11 auf. Bitte eine
aktuellere Version von MiniVend installieren.
Editieren der Datenbanken l�st einen Laufzeitfehler aus
=======================================================
Pumin Wuvanich berichtete �ber dieses Problem. Ich konnte es leider nicht
reproduzieren. Vielleicht ist es mit Unterkatalogen verkn�pft.
206.111.118.118 4pedfCqg:206.111.118.118 - [30/June/1999:12:30:14 -0700]
test01 /cgi-bin/simple/config/dbedit Runtime error: Can't use string
("2ndDayAir") as a HASH ref while "strict refs" in use at (eval 68) line 22.
>
206.111.118.118 4pedfCqg:206.111.118.118 - [30/June/1999:12:30:31 -0700]
test01 /cgi-bin/simple/config/dbedit Runtime error: Can't use string
("Ground") as a HASH ref while "strict refs" in use at (eval 68) line 22.
>
206.111.118.118 4pedfCqg:206.111.118.118 - [30/June/1999:12:31:00 -0700]
test01 /cgi-bin/simple/config/dbedit Runtime error: Can't use string
("locale") as a HASH ref while "strict refs" in use at (eval 68) line 22.
>
Benutzerverwaltung und Zugriffskontrolle [nur f�r Version 4.0 g�ltig]
*********************************************************************
Zun�chst wird eine Benutzerdatenbank (`userdb') f�r den Katalog ben�tigt,
der mit MiniMate verwaltet werden soll.
Konfiguration
=============
Die Datenbank, in der die Informationen f�r Benutzerverwaltung und
Zugriffskontrolle gespeichert werden, ist in die Katalogkonfiguration
aufzunehmen:
Database minimate minimate.asc TAB
Die Datenbank kann auch einen anderen Namen haben, wenn die Variable
`MINIMATE_TABLE' in der Katalogkonfiguration entsprechend gesetzt ist:
Variable MINIMATE_TABLE mmcontrol
Database mmcontrol mmcontrol.asc TAB
Datenbankbeschreibung
=====================
MiniMate speichert alle Daten f�r Benutzerverwaltung und Zugriffskontrolle
in der Datenbank `minimate'.
Internationalisierung
*********************
Die Internationalisierung von MiniMate ist in Arbeit. Zus�tzliche
Freiwillige werden jedoch noch ben�tigt.
Eine russische, eine deutsche und eine franz�sische �bersetzung liegt
bereits vor.
Verzeichnis der MiniMate-Seiten
*******************************
`config/db_column' [nur f�r Version 4.0 g�ltig]
Add or delete columns of MiniVend databases.
`config/menu'
Startseite der Version ohne Frames
`config/upload_other'
Upload/Download von beliebigen Dateien
MiniMate f�r Entwickler
***********************
MiniMate-Erweiterungen zur MML
==============================
`directive_value' NAME [PARSEVARS]
Ergibt den Wert der Konfigurationsdirektive NAME. Hat PARSEVARS einen
wahren Wert, werden Variablen innerhalb des Wertes durch den Wert der
Variablen ersetzt.
Undokumentierte Tags
--------------------
* base-url
* check-upload
* counter
* db_columns
* dbinfo
* display
* display_directive
* e
* export-database
* field_label [nur f�r Version 4.0 g�ltig]
* global-value
* grep-mm [nur f�r Version 4.0 g�ltig]
* if-key-exists
* if-mm [nur f�r Version 4.0 g�ltig]
* if-sql
* ifdef [nur f�r Version 4.0 g�ltig]
* ifndef [nur f�r Version 4.0 g�ltig]
* import_fields
* list-databases [nur f�r Version 4.0 g�ltig]
* list_directives
* list_glob [nur f�r Version 4.0 g�ltig]
* list-keys [nur f�r Version 4.0 g�ltig]
* list_pages
* mm-value [nur f�r Version 4.0 g�ltig]
* newer
* quick_table
* read_serial
* reconfigure
* rotate-database
* rotate-table
* rotate_file
* row-edit
* send-help
* set-alias
* set-click
* substitute
* title-bar
* unconfigure
* uneval [nur f�r Version 4.0 g�ltig]
* version
* widget
* with [nur f�r Version 4.0 g�ltig]
* write_config
* write_relative_file [nur f�r Version 4.0 g�ltig]
`MiniMate::CfgMgr'
==================
`mm_acl_enabled'
Liefert einen Wahrheitswert zur�ck, wenn die Zugriffskontrolle von
MiniMate aktiviert ist.
Makefile
========
`localefiles'
Bringt die Lokalisierungsdateien im `locales' Unterverzeichnis auf den
neuesten Stand.
TODO-Liste
**********
Bug Fixes
=========
* Index f�r bin�re Suchen aktualisieren
* Editieren der Datenbanken l�st einen Laufzeitfehler aus
Diverses
========
* Hilfeseiten zug�nglich machen
* Sichere Installation von Anfang an
* Unterst�tzung f�r MiniMate komplett vom `https:'-Server
* Ersetzen des externen `mv_upload'-Programms durch Benutzung von
MiniVend-Tags beim Hochladen von Dateien via `admin/menu'
* Durchsehen von vorhandenen Dateien (andere Dateien hochladen)
* Ber�cksichtigung von Versionskontrollsysteme beim Hochladen von Seiten
* Vergleich mit ShopAdmin
Internationalisierung
=====================
* nur gew�nschte Sprachen verwenden
* Benutzung eines neuen Tag, da� mit dem globalen Locale-Feld arbeitet,
damit Speicher gespart mit.
Saubere HTML-Ausgabe
====================
* Ersetzen von Font-Tags durch <H?>
* Benutzung von Stylesheets anstatt von <FONT>-Tags und Farbattributen.
* HTML-Ausgabe �berpr�fen
�nderungen
**********
12. December 99
Neues Makefile-Target `localefiles'.
8. August 99
Deutsche �bersetzung von Birgitt Funk hinzugef�gt.
5. August 99
Russische �bersetzung von Alexei Yakimovich hinzugef�gt.
28.Juli 99
MiniMate-Seiten f�r Lokalisierung vorbereitet.
26.Juli 99
Fehler beim Suchen nach Datens�tzen behoben (`config/dbedit').
13.Juli 99
Hilfe f�r Konfigurationsdirektiven wird nun angezeigt.
6.Juli 99
`Makefile.PL' an Win32-Systeme angepa�t und das `install'-Skript neu
geschrieben.
29.Juni 99
�berfl�ssigen Import von `Data::Dumper' entfernt.
16.Juni 99
Unterst�tzung f�r Internationalisierung hinzugef�gt.
Danksagungen
************
Bedanken m�chte ich mich bei Mike Heins als Originalautor von MaxiVend und
als unersch�pfliche Quelle f�r Hinweise und Bugfixes.
Betty Chung f�r die Vorbereitung der Lokalisierung der MiniMate-Seiten.
Alexei Yakimovich f�r die russische �bersetzung.
Birgitt Funk f�r die deutsche �bersetzung.
Stephen M. LaBar, Jr. f�r seine Hilfe bei der Anpassung von `Makefile.PL'
an Win32-Systeme.
Kaare Rasmussen und Robert Hutchinson f�r den Bericht �ber das `resize'
-Problem und Mike Heins f�r einen Ausweg.
Bob Jordan f�r den Bericht �ber das `Data::Dumper'-Problem.
Marc Infield f�r den Bericht �ber einen Fehler in der Dokumentation
(20000103).
Waldemar Gerr f�r seinen Vorschlag zur Dokumentation der Installation.
Marci Beedle f�r seine Berichte �ber die Schwierigkeiten, die passende URL f�r
MiniMate der Dokumentation zu entnehmen.
Historisches
************
28. February 2000
Version 4.0.0.1 freigegeben
12. Juli 99
Version 3.14.0.3 freigegeben
30. Juni 99
Version 3.14.0.2 freigegeben
29. Juni 99
Version 3.14.0.1 freigegeben