• Gesichert rechtsextrem.

    Es war wie ein Schlag ins Gesicht, als die Nachricht durch die Presse ging. Eine Meldung, die mein Vertrauen in die Rechtsstaatlichkeit Deutschlands erschütterte. Die Entscheidung des Verwaltungsgerichts München, einen Eilantrag abzulehnen, der die Entscheidung des bayerischen Kulturministeriums rückgängig machen sollte, ist enttäuschend.

    Weiterlesen: Gesichert rechtsextrem.

  • Befreien Sie Ihren Kindle-Ebookreader aus den Fängen von Amazon


    Der Kindle-Reader ermöglichte vielen Nutzern den Einstieg in die Welt der E-Books. Bücher konnten auch zuvor schon digital gelesen werden, aber erst 2006 erschien das erste Lesegerät mit E-Ink-Display, das in der Lage war, das bereits existierende EPUB-Format zu lesen. Mit 400 $ war dieses Gerät verhältnismäßig teuer.

    Weiterlesen: Befreien Sie Ihren Kindle-Ebookreader aus den Fängen von Amazon

  • Es geht auch mit europäischen Alternativen.

    Es sind schon wilde Zeiten. Es war jedem klar, dass 2025 ein anstrengendes Jahr werden würde. Aber hat irgendjemand einen solchen wilden Ritt bestellt? Meine Morgenroutine hat etwas Masochistisches, wenn ich mich mit meiner Tasse Frühstückskaffee vor dem PC aufbaue und die News abarbeite. Noch schreibt der Spiegel, dass Vance Grönland als Freund besuchen würde.

    Weiterlesen: Es geht auch mit europäischen Alternativen.

Eigentlich gab es keinen direkten Grund für diesen Schritt. Um jedoch dem politischen Wirrwarr, das die Vereidigung des neuen US-Präsidenten mit sich brachte, aus dem Weg zu gehen, war es eine nette Ablenkung.

Mein eigentliches Ziel war es, meine Bücher auszulagern und die Lesbarkeit durch ein WordPress-PDF-Skript zu verbessern. Zudem ist es für mich interessant zu sehen, welche Vor- und Nachteile die verschiedenen Content Management Systems (CMS) mit sich bringen.

Vergleich von Joomla und WordPress

Um es kurz zu überschlagen: Joomla und WordPress bringen jeweils Vor- und Nachteile mit, die man auf der Suche nach dem richtigen CMS abwägen muss. So hat WordPress eindeutig gestalterische Vorteile. Auch lassen sich, out of the box, leichter Mediendateien integrieren. Auch die Auswahl an Vorlagen und Plugins ist weitaus größer als bei Joomla. Dafür punktet Joomla bei der Rechtevergabe und das einfache Erstellen einer neuen Seite und deren Einbinden, was das Betreiben größerer Seiten mit mehreren Autoren ohne Vorkenntnisse ermöglicht, oder besser gesagt, vereinfacht. Für eine kleine Seite, die nicht ständig verändert werden soll, oder wenn man einen einfachen Blog betreiben möchte, ist WordPress vermutlich die bessere Wahl. Beide Systeme verdienen es, einen Blick darauf zu werfen.

Installationsanleitung

Bei der Installation traf ich dann auf eine größere Hürde, die mich dazu zwang, WordPress mehrere Male zu installieren. Dabei ist der Fehler recht leicht und schnell zu beheben, wenn man weiß, wie.

Falls Sie auch mal WordPress installieren wollen, Sie wie ich Proxmox nutzen und als Reverse Proxy NGINX vorgeschaltet haben, können Sie folgende Installationsroutinen nutzen. (Ubuntu 24.04)

1. Aktualisieren Sie die Paket-Archive und das System

Bevor Sie WordPress auf einem frischen System installieren, sollten Sie unbedingt Ihr Ubuntu-System aktualisieren, um sicherzustellen, dass Sie die neuesten Pakete und Sicherheitspatches auf dem Server haben. Öffnen Sie ein Terminal und führen Sie die folgenden Befehle aus:

sudo apt update
sudo apt upgrade

2. Installieren des LAMP-Stapels

WordPress benötigt einen Webserver, eine Datenbank und PHP, um zu funktionieren. Wir werden den LAMP-Stack verwenden, der für Linux, Apache, MySQL und PHP steht. Installieren wir nun die einzelnen Komponenten:

Der Webserver:

sudo apt install apache2

Nach der Installation starten wir den Webserver und stellen sicher, dass er beim Hochfahren des Systems automatisch gestartet wird:

sudo systemctl start apache2
sudo systemctl enable apache2

Die Datenbank:

sudo apt install mysql-server

Bevor wir die Datenbank einrichten, machen wir ein paar Sicherheitseinstellungen:

sudo mysql_secure_installation

Hier wird ein neues Root-Passwort gesetzt, der Fernzugriff auf die Datenbank sollte unterbunden und die Beispieldatenbank gelöscht werden:

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y

PHP-Erweiterungen:

sudo apt install php libapache2-mod-php php-mysql php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip -y

Um Ihre PHP-Installation zu testen, können Sie die Datei phpinfo.php erstellen:

echo "" | sudo tee /var/www/html/phpinfo.php

Durch das Aufrufen der Datei mit Ihrer lokalen IP und dem Dateinamen (http://xxx.xxx.x.x/phpinfo.php) erscheint in Ihrem Browser ein Fenster mit den Infos zu Ihrer aktuellen PHP-Installation. Die Datei liegt unter /var/www/html, heißt phpinfo.php und sollte aus Sicherheitsgründen schnell wieder gelöscht werden.

rm /var/www/html/phpinfo.php

3. Erstellen einer Datenbank

Jetzt loggen wir uns in die Datenbank als Root-Benutzer ein:

sudo mysql -u root -p

Hier wird die Datenbank eingerichtet:

CREATE DATABASE wordpressdatenbank;
CREATE USER 'wordpressbenutzername'@'localhost' IDENTIFIED BY 'ein_starkes_Passwort';
GRANT ALL PRIVILEGES ON wordpressdatenbank.* TO 'wordpressbenutzername'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Bitte ersetzen Sie den Benutzernamen (wordpressbenutzername), den Namen der Datenbank (wordpressdatenbank) und das Passwort (ein_starkes_Passwort).

4. Download und Konfiguration von WordPress

Mit den folgenden Befehlen gehen wir zunächst in das Installationsverzeichnis von WordPress, laden die komprimierte Datei herunter, entpacken diese und vergeben die nötigen Rechte für die Ordner:

cd /var/www/html
wget https://wordpress.org/latest.tar.gz
tar xzvf latest.tar.gz
sudo chown -R www-data:www-data /var/www/html/wordpress
sudo chmod -R 755 /var/www/html/wordpress

Mit folgendem Befehl löschen wir die gepackte Datei wieder, da sie nicht mehr benötigt wird:

rm latest.tar.gz

Jetzt erstellen wir eine WordPress-Konfigurationsdatei, indem die wp-config-sample.php Datei in wp-config.php umbenannt wird:

sudo cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php

Jetzt tragen wir in die wp-config.php Datei die Zugangsdaten für die Datenbank ein, indem wir sie durch folgenden Befehl öffnen:

sudo nano /var/www/html/wordpress/wp-config.php
define('DB_NAME', 'wordpressdatenbank');
define('DB_USER', 'wordpressbenutzername');
define('DB_PASSWORD', 'ein_starkes_Passwort');
define('DB_HOST', 'localhost');

Jetzt kommt der Punkt, weswegen ich dieses Tutorial überhaupt erstellt habe und weswegen ich WordPress auf der Fehlersuche mehrere Male installiert habe.

Scrollen Sie in der wp-config.php Datei nach unten und tragen Sie zwischen

/* Add any custom values between this line and the "stop editing" line. */

und

/* That's all, stop editing! Happy publishing. */

folgenden Befehl ein:

/*
Handle SSL reverse proxy
*/
if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')
    $_SERVER['HTTPS']='on';
if (isset($_SERVER['HTTP_X_FORWARDED_HOST'])) {
    $_SERVER['HTTP_HOST'] = $_SERVER['HTTP_X_FORWARDED_HOST'];
}

So sollte das aussehen:

/* Add any custom values between this line and the "stop editing" line. */
/*
Handle SSL reverse proxy
*/
if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')
    $_SERVER['HTTPS']='on';
if (isset($_SERVER['HTTP_X_FORWARDED_HOST'])) {
    $_SERVER['HTTP_HOST'] = $_SERVER['HTTP_X_FORWARDED_HOST'];
}
/* That's all, stop editing! Happy publishing. */

 

Jetzt speichern wir die wp-config.php Datei mit Strg-o und schließen diese mit Strg-x.

Durch die letztere Konfiguration kann WordPress nun die internen Anfragen von NGINX von http auf https übersetzen und die Seite wird korrekt dargestellt, da die mitgelieferte .htaccess Datei von WordPress dies nicht tut.

5. Konfiguration des Apache-Servers

Jetzt konfigurieren wir noch den Apache-Server, damit der Besucher auf den richtigen Ordner weitergeleitet wird:

sudo nano /etc/apache2/sites-available/wordpress.conf

Hier kopieren wir folgenden Code ein und passen ihn an:

<VirtualHost *:80>
    ServerAdmin Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein.
    ServerName ihredomain.de
    ServerAlias www.ihredomain.de
    DocumentRoot /var/www/html/wordpress
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    <Directory /var/www/html/wordpress/>
        AllowOverride All
    </Directory>
</VirtualHost>

Erneut mit Strg-o speichern und mit Strg-x verlassen.

Jetzt aktivieren wir die wordpress.conf Datei und deaktivieren die 000-default.conf Datei:

sudo a2ensite wordpress.conf
sudo a2dissite 000-default.conf

Jetzt aktivieren wir das geänderte Modul und starten den Apache-Server neu:

sudo a2enmod rewrite
sudo systemctl restart apache2

Am besten rufen Sie Ihre Seite über Ihre Domain auf. Diese sollte bereits eingerichtet sein und ein Let's Encrypt-Zertifikat haben. Folgen Sie nun der Installation.

PHP-Einstellungen anpassen

PHP ist von Haus aus so eingestellt, dass per Browser Dateien von maximal 2 Megabyte hochgeladen werden können. 2 MB reichen für Bilddateien aus, möchten Sie aber mal Audiodateien, Videos oder PDFs bereitstellen, reichen diese schnell nicht aus.

Um das zu ändern, öffnen Sie die php.ini:

nano /etc/php/8.3/apache2/php.ini

Ihre PHP-Version kann von meiner abweichen. Anstatt wie bei mir 8.3 kann es eine neuere Version sein. Welche Version Sie haben, können Sie in der phpinfo.php Datei, die wir anfangs erstellt haben, ablesen. Oder Sie gehen durch cd /etc/php in den entsprechenden Ordner. Durch die Eingabe von ls wird Ihnen die Version Ihrer PHP-Installation angezeigt.

Ändern Sie post_max_size von:

post_max_size = 2M

auf beispielsweise:

post_max_size = 128M

Leider ist das Finden der entsprechenden Zeile etwas lästig und sie befindet sich ziemlich weit unten. Im Shell im Browser ist die Suchfunktion nutzlos. Da es aber keinen Sinn macht, wegen der einen Änderung SSH einzurichten und die Firewall entsprechend zu konfigurieren, ist es ratsam, sich die zwei Minuten Suche zu nehmen.

Hilfreiche Ressourcen

Jeder Neuankömmling bei WordPress wird von dem Menü zunächst erschlagen, wie bei jedem anderen CMS auch. Geholfen hat mir sehr die Seite webseitenmachen.de. Die Tutorials sind prima und wirklich gut erklärt. Eine gut investierte halbe Stunde, um schnell zu brauchbaren Ergebnissen bei Joomla zu kommen.

 

Bücher

  • Das Türkenhaus

    Deutschland im Herbst 1988. Der siebzehnjährige Christian leidet unter hypnopompen Halluzinationen. Seit dem Tod seiner ersten großen Liebe weicht ihm seine Fantasiefreundin Anna aus Kindheitstagen nicht mehr von der Seite. Sein behandelnder Psychologe erwägt, Christian aufgrund selbstverletzendem Verhaltens in eine psychiatrische Klinik zu überstellen.

    Weiterlesen: Das Türkenhaus

  • Lord ohne Filter

    Bei einem Spaziergang mit seinem Hund lernt der dreizehnjährige Oliver die gleichaltrige Ines kennen. Oliver bietet Ines eine Zigarette an, die er seiner Mutter zuvor stibitzte. Da er den leichten Zigaretten die Filter abbricht, wird das Rauchen von Lord ohne Filter zu Ines und Olivers Spezifikum. Doch es gelingt Ines und Oliver in den folgenden Jahren nicht, ein Paar zu werden.

    Weiterlesen: Lord ohne Filter

  • Die Lopare

    Über 250 Jahre ist es her, dass die Raumschiffe der Internationalen Raumflotte der Erde nach dem großen Krieg den Schritt wagten und in die Weiten des Weltalls aufbrachen, da sie im Sonnensystem keine Perspektive für sich sahen. Nachdem die Erde und ihre Kolonien im Sonnensystem sich von den Folgen des Konfliktes erhohlten und über überschüssige Ressourcen verfügen, bricht eine wissenschaftliche Flotte auf, um die nahen Sternensysteme zu erkunden.

    Weiterlesen: Die Lopare