Eigene Umgebungsvariablen im Uberspace

Auch wenn das sehr nach Basiswissen aussieht, lerne ich gerade hinzu, aber möchte euch das Wissen nicht vorenthalten.
Uberspace bietet von Haus aus eine Umgebungsvariable $USER an, die anstelle des Usernames überall eingesetzt werden kann. Was allerdings fehlt wäre $DOMAIN, für User die eine Domain an ihren Uberspace angebunden haben. Blöd wäre es jetzt, wenn $DOMAIN ungültig wird, wenn sich die Domain ändert, somit habe ich versucht eine universelle Umgebungsvariable zu schaffen.

Nach einigen Stunden Recherche und Probearbeiten ist sie hier:

export DOMAIN="$(uberspace-list-domains -w | head -2 | tail -1)"

Dieser Befehl legt sich eine Session-Variable an, die die zweite Zeile der Ausgabe von „uberspace-list-domains -w“ enthält (normalerweise ist dies die erste angebundene Domain nach „user.server.uberspace.de“).

Wer das ganze mit www. haben möchte ändert auf „head -3“ ab.
Damit das ganze jetzt mehrere Sessions überlebt muss das in die .bash_profile datei geschrieben werden.
Diese ruft ihr einfach per

nano .bash_profile

auf und schreibt die Befehle leicht abgeändert herein.

DOMAIN="$(uberspace-list-domains -w | head -2 | tail -1)"
WWWDOMAIN="$(uberspace-list-domains -w | head -3 | tail -1)"

export DOMAIN
export WWWDOMAIN

Damit habt ihr eine Variable im Uberspace, die ständig auf die zweite und eine die ständig auf die ditte Zeile der Ausgabe von uberspace-list-domains -w zeigt. Das head sorgt dafür, dass von der Ausgabe nur 2 oder 3 Zeilen abgeschnitten werden, das tail sorgt dafür, dass von diesen abgeschnittenen Zeilen nur die letzte genommen wird.

Habt ihr allerdings mehr als eine Domain angebunden können die Zeilenangaben wiederum nicht stimmen und ihr müsst sie entsprechend der Ausgabe von von uberspace-list-domains anpassen. Hier könnt ihr mit export-befehlen in der Session arbeiten, die ihr dann immer mit „echo $DOMAIN“ kontrollieren könnt.

Natürlich könnt ihr dort auch Variablen nach belieben wie

export WHOYAGONNACALL='ghostbusters'

oder mehrere sinnvollere Beispiele eintippen, die dann euch ständig zur Verfügung stehen und die Arbeit immer mehr erleichtern.

Domainumzug bei WordPress. Die schnelle Variante

Domainumzüge sind eine Sache für sich, wie ihr (vermutlich noch nicht) bemerkt habt ist das hier eben auch passiert. Alles innerhalb von ein paar Minuten.
Ihr braucht dazu allerdings irgendeine Art von HTTP-Ansteuerung eures Webspaces vom Hoster direkt, besser noch wäre ein separater Dienstleister für Domain und Hosting, da reine Hoster meist ohne Umschweife auch eine Möglichkeit bieten per HTTP zuzugreifen.

Ohne Backup geht nichts, daher greift auf euren Hostingaccount zu und kopiert euch erst einmal alles, was ihr an Websitedaten habt auf eure lokale Festplatte. Ebenfalls sichert ihr dann noch einmal die MySQL-Datenbank per MySQL oder per WordPress-Plugin. Falls etwas schief läuft, steht dem „einziehen“ in jede neue Domain also nur noch wenig im Wege.

Wenn ihr jetzt alles richtig macht, braucht ihr eure Backups aber im Regelfall nicht mehr.
Während die alte Domain noch angebunden ist, ändert im WordPress-Backend unter Einstellungen -> Allgemein auf die Domain, die euer Hoster euch im Hoster-eigenen Backend gegeben hat. Meistens ist dies etwas wie „username“.“hostername“.“tld“ oder ähnliches.
Speichert ihr diese Einstellungen fliegt ihr erst einmal aus eurer WordPress-Anmeldung raus. Das ist aber ganz normal. Ihr werdet auf die Login-Seite eurer WordPress-Installation weitergeleitet, nun aber mit „username“.“hostername“.“tld“.
Habt ihr eine neue Domain beim Domainregistrar eures Vertrauens erstanden, setzt die DNS-Einträge entsprechend eurer Hoster-Konfiguration. Dieser sollte euch für den Fall, dass ihr eigene Domains anbinden wollt eine Oberfläche zur Hand geben, um eben diese einzutragen. Aus dieser Oberfläche kommen dann im Idealfall IP-Adressen, mit der der Domainregistrar gefüttert werden muss. Sind diese dann beim Hoster eingetragen, müsstet ihr die Domain ansteuern können. Öffnet dann wiederum eure WordPress-Login-Seite und meldet euch an. Hier werdet ihr wieder einmal auf die Webadresse des Hosters geworfen. Um dies endgültig zu ändern, ändert unter Einstellungen -> Allgemein die Adresse des Blogs auf die neue Domain. Ab sofort werden alle WordPress-Permalinks auf die neue Domain gebunden und eure neue Domain kann ohne Probleme weiter verwendet werden.

Aber, alle Nutzer und Leser die auf irgendwelche Links klicken, die noch auf die alte Domain linken, laufen erst einmal ins leere.
Falls euer Hoster ein freies Editieren der .htaccess-Datei erlaubt könnt ihr diesen Fehler aber leicht beheben:

RewriteEngine On
 Options +FollowSymLinks
 RewriteRule (.*) http://www.domain.tld [R=301,L]

Mit diesem Code in der htaccess ist das Problem ebenfalls gelöst. Wobei hier natürlich domain.tld auf eure neue Domain umgeschrieben werden muss