ILIAS-Tricks not only for Schools
Gambio für E-Commerce-Kaufleute auf einem vServer
[wolfganghuebsch] - 18. Sep 2020, 08:08
Die Idee ist, einen vServer anzumieten mit Ubuntu 18.04 ohne Plesk und darauf die Shop-Software Gambio zu installieren. Dieser mit htaccess-Passwort geschützter Gambio-Master wird von der Lehrkraft eingerichtet und kann dann per Skript x-fach geklont werden, so dass alle SuS ihren eigenen Webshop erhalten.
- Changelog:
- 2020.09.18: Initiale Version
- Gambio-Version: 4.0.2.0
- Autor: Wolfgang Hübsch
An dieser Stelle eine Danksagung für die mega Arbeit des Gambio-Teams aus Bremen :)
Vorbereitung und Installation des Master-Shops
- Download von Gambio.de als Zip-File: https://www.gambio.de/information/download
- Auswahl eines geeigneten vServers, z.B. von hier (ich werde dafür nicht bezahlt, dies ist auch eine private Dokumentation für meine Arbeit): https://www.hosteurope.de/Server/Virtual-Server/, z.B. Starter Plus. Das Paket kann sogar während des Betriebes erweitert werden, falls es nicht ausreicht. Also erstmal ein kleineres nehmen.
- Wenn die IP des Servers bekannt ist, diese einer Domain oder Subdomain zuordnen, wie es hier beschrieben ist: https://bbs-ilias.de/ilias/goto.php?target=pg_31_187&client_id=info. Dann das ILIAS-Install-Tutorial for Ubuntu 18.04 (meine Anleitung) weiter durcharbeiten bis einschließlich Kapitel 4
- Eine Datenbank erstellen, wie es in Kapitel 5 in meiner Anleitung beschrieben ist
- Gambio entpacken und den Inhalt von "Shopsystem->Dateien" nach /var/www/html/gambiomaster (Ort des Master-Shops) kopieren. Dazu ist ggf. ein FTP-Server notwendig.
- Anleitung ftp-Server: https://www.howtoforge.com/how-to-install-proftpd-with-tls-on-ubuntu-1804/
- Anleitung ftp-Client siehe Gambio-Installationsanleitung
- Mit der Gambio-Installationsanleitung aus dem Zip Gambio installieren
- Ggf. muss die Installation nicht mit https sondern http durchgeführt werden. Die Fehlermeldung lautet "gambio Shop unter dieser Adresse nicht erreichbar". In diesem Fall muss vorher ein evtl. vorhandenes rewrite auf https in der Vhost-Datei 000-gambio.kivinet.de entfernt werden (ganz unten zu finden). Die Installation dann zunächst mit http in der Browseradresszeile durchführen.
- Damit später der Admin-Bereich unter https aufrufbar ist, muss ggf. der Serverpfad manuell auf https umgestellt werden. Dazu ist die folgende Datei zum Abschluss der Installation in Zeile 60 auf https zu ändern:
nano /var/www/html/gambiomaster/admin/includes/configure.php
- Beispiel: define('HTTP_SERVER', 'https://gambio.kivinet.de');
Server E-Mail-fähig machen
MX-Record erstellen
- Sofern noch nicht geschehen, muss der FQDN einen MX-Eintrag im DNS-System erhalten. Bei einer Subdomain gambio.kivinet.de würde dies z.B. so aussehen:
- Bei einem FQDN ohne Subdomain verweise ich auf diese Beispiele: https://bbs-ilias.de/ilias/goto.php?target=pg_31_187&client_id=info
E-Mail-Dienst installieren
- Am Einfachsten nutzt man ein bereits vorhandenes E-Mail-Postfach und SSMTP: https://decatec.de/home-server/linux-einfach-e-mails-senden-mit-ssmtp/
- Man kann aber auch Postfix nehmen: https://bbs-ilias.de/ilias/goto.php?target=pg_66_187&client_id=info
Verzeichnisschutz für den Master-Shop erstellen
Damit SuS nicht versehentlich den Master-Shop verwenden, dessen Passwort ihnen ja bekannt ist, bauen wir einen htaccess-Schutz ein.
htusers erstellen
- Statt eine htaccess-Datei zu verwenden, die uns später beim Klonen stören könnte, schreiben wir direkt in die vhost-Konfiguration, von denen zwei vorhanden sind:
- 000-gambio.kivinet.de.conf
- 000-gambio.kivinet.de-le-ssl.conf
- Wenn noch nicht geschehen:
mkdir -p /opt/scripts/schutz
cd /opt/scripts/schutz
- Einen Benutzer hsv erstellen:
htpasswd -c -B .htusers hsv
- Das Passwort lautet natürlich "aufstieg"
- Wurde auch die Datei .htusers korrekt angelegt?:
ls -la /opt/scripts/schutz
vhosts bearbeiten
- Nacheinander beide vhost-Configs öffnen:
nano /etc/apache2/sites-available/000-gambio.kivinet.de-le-ssl.conf
nano /etc/apache2/sites-available/000-gambio.kivinet.de.conf
- Jeweils den folgenden Code einfügen:
1 | <Directory /var/www/html/gambiomaster> |
/etc/init.d/apache2 restart
Den Master-Shop klonen
Wir wollen den Master-Shop nun klonen, um ihn für x SuS verfügbar zu machen. Dazu wird ein Skript benutzt, welches den Master kopiert (Datenbank und Verzeichnis).
nano /opt/scripts/clone
- Füge den folgenden Code ein:
1 | #!/bin/bash |
- In den Zeilen 2-10 sind entsprechende Einstellungen vorzunehmen, die selbsterklärend sein dürften.
- Nach dem Speichern das Skript startfähig machen:
chmod +x /opt/scripts/clone
- Skript starten:
/opt/scripts/clone
- Das Skript löscht evtl. vorhandene Klone mit identischen Namen!
Lösch-Skript erstellen
- Ein Löschskript kann wie oben erstellt werden mit folgendem Code. Wenn die Daten beim Klonen in den Zeilen 2 und 3 gleich eingegben werden, sollte alles geklonte auch wieder gelöscht werden:
1 | #!/bin/bash |