Werkbuch: Hubzilla: Installation der App
Vorbereitung Apache-Webserver
Der Apache.Webserver sowie PHP waren auf meinem Server bereits installiert und rudimäntär vorkonfiguriert. Was noch zu tun ist:
Es muss ggf. noch mod_rewrite installiert werden:
apt install apache2-modrewrite
cd /etc/apache2/mods-enabled/
ln -s ../mods-available/rewrite.load rewrite.load
/etc/php/8.3/apache2/php.ini muss so angepasst werden, dass Bilder hochgeladen werden können. Hier muss post_max_size erhöht werden:
; Maximum size of POST data that PHP will accept.
; Its value may be 0 to disable the limit. It is ignored if POST data reading
; is disabled through enable_post_data_reading.
; https://php.net/post-max-size
post_max_size = 200M
Ihr müsst die Certifikate für https einspielen. Dafür müsst Ihr normalerweise bei Euerem Provider einen Cert-Request hochladen, den Ihr mit einem provaten ssl-Key signiert. Diesen Vorgang findet Ihr hier beschrieben. Daraufhin könnt Ihr vom Hoster ein Intermediate-Cert und ein Domain-Cert runterladen. Diese könnt Ihr an die "Default-Location" /etc/ssl/certs legen, das Key-File geht nach /etc/ssl/private
Danach muss eine Apache-Konfiguration für https erstellt werden: Ihr kopiert am einfachsten die Datei /etc/apache2/sites-available/default-ssl.conf in /etc/apache2/sites-available/-ssl.conf und legt einen Symlink von /etc/apache2/sites-enabled auf diese Datei, um sie zu aktivieren. Dann editiert Ihr /etc/apache2/sites-available/-ssl.conf und schreibt da den Ort der Certifikate rein:
SSLCertificateFile /etc/ssl/certs/cert_domainname.crt
SSLCertificateKeyFile /etc/ssl/private/domainname.key
SSLCertificateChainFile /etc/ssl/certs/intermediate_domainname.org.crt
Nach einem Restart des Webservers muss die Testseite von Apache auf dem Server sowohl unter http als auch unter https ohne Certifikat-Warnungen zur Verfügung stehen.
Installation von HubZilla
Anschließend erfolgt die Installation von Hubzilla selbst. Das Vorgehen ist hier gut beschrieben: help Bitte anhand dieser Anleitung vorgehen. Prinzipiell läuft die Installation folgendermaßen ab:
- Die Applikation wird ins Application-Root des Webservers geclont. Wichtig hierbei: Nicht in ein (durch den git clone Aufruf) entstandenes Unterverzeichnis, sondern in das WebRoot des Webservers selbst. Bei einer Default-Apache-Installation unter Ubuntu ist dies /var/www/html.
- Die Applikation will unter diesem Pfad auch ihre Daten ablegen. Per Default läuft der Webserver unter www-data. Anstelle - wie in help beschrieben - diese Verzeichnisse welt-schreibbar zu machen, genügt es. die Gruppen-Berechtigungen der Verzeichnisse auf www-data zu setzen und die Verzeichnisse gruppen-schreibbar zu machen
- Anschließend geht man am Besten mit dem Webbrowser auf die neu eingerichtete Seite. Es erscheint eine Diagnose-Seite, die aufführt, welche PHP-Module benötigt werden. Diese (z.B. bei Ubuntu mit apt install php-) nachinstallieren. Zusätzlich gewünschte Pakete lassen sich aus dem Apache - Fehlerlog entnehmen, bei mir musste noch bmp, bcmath und php8.3-gmp nachinstalliert werden.
- Danach dordert die Seite auf, die Datenbank-Verbindung zu konfigurieren. Hier Datenbankname, Datenbank-Benutzer, Hostname der DB eingeben wie bei Konfiguration des Servers beschrieben.
- Jetzt fordert die Webseite zur Angabe einer EMail-Adresse auf, Hier unbedingt die eigene, gültige EMail-Adresse eingeben: Der Benutzer, der sich mit dieser EMail-Adresse registriert, kann über das Web-Interface von Hubzilla die Seite administrieren.
- Ist das geschafft, erscheint die Registrierungs-Maske und man kann man sich mit oben genannter EMail-Adresse bei Hubzilla registrieren. Hubzilla verschickt eine enrsprechende Mail an die Adresse, über die man die Registrierung abschließen kann