Unterverzeichnis /wordpress von Domain entfernen

Wer in seiner Blog- oder Webseiten-Domain noch das Unterverzeichnis stehen hat, möchte dies gerne loswerden. Das ist leider gar nicht so einfach, wenn man nur Zugriff auf das WP-Dashboard hat. Hier muss tiefer eingegriffen werden, da es sich mehr oder weniger um einen Umzug der WordPress-Domain handelt.

Wieso steht bei meiner WordPress-Webseite /wordpress?

UmzugsserviceDieses Problem haben leider sehr viele WordPress-Webseitenbetreiber. Bei der Erstellung der Site wurde die Domain beim Webhoster meist auf das / (root) gesetzt. Dort wurde dann ein Unterordner angelegt /wordpress und in diesen die WP-Webseite installiert. Der Aufruf geschieht dann automatisch über www.domain.de/wordpress. Das sieht unschön aus und hat Nachteile für SEO, weil die URL Struktur mit einem sinnlosen Füllwort verlängert wird.

Wie werde ich das Unterverzeichnis /wordpress also los?

Hierzu benötigt man auf jeden Fall FTP Zugriff und Zugriff auf die MySQL-Datenbank. Man muss folgende Schritte erledigen:

  1. Datenbank migrieren
  2. .htaccess anpassen
  3. Domain umleiten auf das Unterverzeichnis
  4. ggfs. noch die Website-URL über die wp-config.php anpassen

Datenbank migrieren

WordPress speichert in seiner Datenbank die Website-Adresse (in unserem Fall also die www.domain.de/wordpress) als serialisierten String ab. D.h. ein einfaches Suchen&Ersetzen funktioniert unter Umständen nicht. Daher sollte man die Datenbank mit einem Plugin migrieren wie WP Migrate DB Pro (<20% Rabatt über diesen Link). Hier sucht man (siehe Screenshot) nach Einträgen der Domain mit dem Unterverzeichnis und ersetzt diese durch die Domain ohne den Anhang. Übrigens bleibt beim Migrieren der DB der absolute Pfad gleich. Daher muss hier nichts unternommen werden.

Das Plugin erstellt eine Migrationsdatei, die dann über die Datenbankverwaltung (PHPMyAdmin) wieder importiert wird. Am besten man sichert vorher nochmal die Original-Datenbank für den Fall der Fälle.

.htaccess anpassen

Danach muss die .htaccess-Datei angepasst werden. Dort sind Direktiven angegeben, die auf das Unterverzeichnis verweisen. Diese Direktive lautet:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
</IfModule>
# END WordPress

Sie muss ersetzt werden durch

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Umleiten der Domain auf das Unterverzeichnis

Anschließend muss natürlich die Domain auf das Unterverzeichnis geleitet werden. Das macht man im Dashboard des Webhosters (Strato, 1&1, All-Inkl,  …). Dort ist aktuell die Domain auf / gelegt und muss dann auf /wordpress gemapped werden. Das klingt etwas unsinnig, ist aber eigentlich schlüssig: Der Startort der Domain ist das Unterverzeichnis und muss es auch sein, da ansonsten der Aufruf über www.domain.de immer eine Ebene im Verzeichnisbaum vor /wordpress landet. Daher stellt man die Domain direkt auf /wordpress.

Site_URL anpassen

Zum Schluss kann man noch auf Nummer sicher gehen und die Site URL fest in der wp-config.php angeben. Dadurch wird festgelegt, dass die aufrufende Domain www.domain.de ist.

define('WP_SITEURL', 'http://www.neue-adresse.de');
define('WP_HOME', 'http://www.neue-adresse.de');

Das sollte es eigentlich gewesen sein. Die WordPress-Site läuft ohne lästiges Unterverzeichnis.

Wer hier nicht zurecht kommt, kann gerne meinen Umzugsservice für WordPress in Anspruch nehmen.

Weiterleitung der alten URLs auf neue, damit keine Rankings verloren gehen

Da ja die URL der Webseite sich ändert, würden Links auf diese ins Leere laufen. Mühsam erarbeitete Rankings bei Google & Co. würden verloren gehen. Das ist der Klassiker-Fehler, der leider häufig begangen wird, wenn die Adresse einer Webseite geändert wird. Daher ist es nötig im root-Verzeichnis der Installation in der .htaccess-Datei noch eine 301 Weiterleitung einzurichten.

RedirectMatch 301 ^/wordpress/(.*)$ https://domain.tld/$1

Dadurch werden alle Anfragen, die an domain.tld/wordpress geschickt werden umgeleitet auf domain.tld.

Letzte Version vom 8. November 2018 von Netzgänger
Jetzt WordPress Newsletter in dein Postfach

Melde dich jetzt für meinen Newsletter an und du erhältst regelmäßig Tipps und Tricks zu WordPress in dein Postfach. Natürlich kannst du ihn jederzeit abbestellen.


Kommentar schreiben

Mit Absenden deines Kommentars erklärst du dich mit der Verarbeitung deiner hier angegebenen Daten einverstanden (Datenschutzerklärung). Diese werden nur zur Verwaltung der Kommentare verwendet und keinem anderen Zweck zugefügt. Du kannst jederzeit per E-Mail an info@netz-gaenger.de der Speicherung deiner Daten widersprechen.

* Notwendige Angaben

Netzgänger Webdesign | Rohrersmühlstraße 22 in Schwabach | Bayern
Kontakt: info@netz-gaenger.de
↑ oben
Inhalt