====== Wordpress auf einer Linux VM installieren ======
In diesem Artikel werden Schritte aufgezeigt um Wordpress samt Datenbank aufzusetzen.
Zuerst wird das System geupdated.
sudo apt update && sudo apt upgrade
Anschließend installieren wir den Webserver apache2 als auch den Datenbankserver mariadb.
Zudem werden noch einige php Module installiert.
sudo apt install apache2 mariadb-server unzip vim libapache2-mod-php php-gd php-mysql \
php-curl php-mbstring php-intl php-gmp php-bcmath php-xml php-imagick php-zip
Anschließend bereiten wir die Datenbank vor.
sudo mysql
Folgende Befehle müssen innerhalb der SQL-Shell ausgeführt werden:
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
CREATE DATABASE IF NOT EXISTS wordpress_wordpress CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
GRANT ALL PRIVILEGES ON wordpress.* TO 'username'@'localhost';
FLUSH PRIVILEGES;
Anschließend beenden wir die SQL-Shell.
quit;
Jetzt können wir die Wordpress Dateien herunterladen. Das aktuellste Packet findet man unter https://wordpress.org/latest.zip.
cd /var/www
wget https://wordpress.org/latest.zip
unzip latest.zip
Anschließend werden noch die Rechte gesetzt, sodass der Webserver auf den Ordner und den darin liegenden Dateien zugreifen kann.
sudo chown -R www-data:www-data /var/www/nextcloud
Nach dem entpacken der zip kann nun in das Verzeichnis /var/www/wordpress gewechselt werden.
Hier kann vorab die Konfiguration vorgenommen werden. Dazu kopieren wir uns die Datei mit folgender Zeile und bearbeiten im Anschluss die neue Datei wp-config.php mit den oben erstellten Datenbank Zugangsdaten.
cd /var/www/wordpress
cp wp-config-sample.php wp-config.php
vim wp-config.php
Folgende Zeilen müssen bearbeitet werden:
// ** Database settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'wordpress_wordpress' );
/** Database username */
define( 'DB_USER', 'wordpress' );
/** Database password */
define( 'DB_PASSWORD', 'password' );
/** Database hostname */
define( 'DB_HOST', 'localhost' );
/** Database charset to use in creating database tables. */
define( 'DB_CHARSET', 'utf8mb4' );
/** The database collate type. Don't change this if in doubt. */
define( 'DB_COLLATE', '' );
Falls die Wordpress Instanz hinter einem Reverse Proxy erreicht wird, muss noch etwas beachtet werden. Dazu muss in der gleichen Datei wp-config.php ganz oben folgendes eingetragen werden, sodass Wordpress mit unverschlüsselten Anfragen zurecht kommt, da diese nach dem Reverse Proxy spätestens verschlüsselt stattfinden.
Im Anschluss wird noch der Webserver konfiguriert.
vim /etc/apache2/sites-enabled/000-default.conf
# hier muss der Servername abgeändert werden
# diese Zeile kann auch auszementiert bleiben, dann hört der Webserver auf alle Anfragen.
ServerName www.example.com
# hier muss der Root Pfad abgeändert werden
DocumentRoot /var/www/wordpress
Nun muss noch der Webserver neu gestartet werden und die Wordpress installation kann wie gewohnt über die Weboberfläche gestartet werden.
systemctl restart apache2