Kurz gesagt: Lass WordPress im Unterverzeichnis liegen, trag unter Einstellungen → Allgemein bei Website-Adresse (URL) deine Hauptdomain ein, kopiere index.php und .htaccess ins Hauptverzeichnis und passe in der kopierten index.php den Pfad zu wp-blog-header.php an. Danach speicherst du die Permalinks einmal neu. Noch sauberer ist es, beim Hoster den Dokumentstamm der Domain direkt auf das Unterverzeichnis zu legen.
Viele installieren WordPress in einen Ordner wie /wordpress/ oder /blog/, weil der Hoster das so vorschlägt oder weil im Hauptverzeichnis schon andere Dateien liegen. Die Besucher sollen die Seite aber unter https://example.com/ sehen und nicht unter https://example.com/wordpress/. WordPress unterstützt genau diesen Fall offiziell.
Welche Methode passt zu dir?
| Methode | Aufwand | Vorteil | Nachteil |
|---|---|---|---|
| Dokumentstamm beim Hoster umstellen | gering | sauberste Lösung, keine kopierten Dateien | nicht bei jedem Hoster möglich, Links in der Datenbank müssen ersetzt werden |
Kopierte index.php + zwei Adressen | gering | offizieller WordPress-Weg, funktioniert fast überall | Backend und Mediendateien bleiben unter /wordpress/ |
Umleitung per .htaccess | mittel | Hauptverzeichnis bleibt frei von WordPress-Dateien | nur Apache, fehleranfälliger bei weiteren Regeln |
Wenn du den Dokumentstamm ändern kannst, nimm diesen Weg. Sonst ist die kopierte index.php die beste Wahl.
Die zwei Adressen in WordPress
Unter Einstellungen → Allgemein gibt es zwei Felder, die oft verwechselt werden:
| Feld | Interner Name | Bedeutung | Wert im Beispiel |
|---|---|---|---|
| WordPress-Adresse (URL) | siteurl | wo die WordPress-Dateien liegen | https://example.com/wordpress |
| Website-Adresse (URL) | home | unter welcher Adresse Besucher die Seite aufrufen | https://example.com |
Solange beide Adressen gleich sind, läuft die Seite im Unterverzeichnis. Unterscheiden sie sich, liefert WordPress die Seite unter der Website-Adresse aus, während Backend und Dateien im Unterverzeichnis bleiben.
Anleitung: Methode ohne Verschieben der Dateien
Mach vorher ein Backup. Die Schritte dauern etwa zehn Minuten.
- Melde dich im Backend an und öffne Einstellungen → Allgemein.
- Lass die WordPress-Adresse unverändert (
https://example.com/wordpress) und ändere die Website-Adresse aufhttps://example.com. Speichern. Die Seite ist jetzt kurz nicht erreichbar, das ist normal. - Verbinde dich per SFTP und kopiere (nicht verschieben) die Dateien
index.phpund.htaccessaus dem Ordner/wordpress/ins Hauptverzeichnis. Siehst du die.htaccessnicht, aktiviere im FTP-Programm die Anzeige versteckter Dateien. - Öffne die kopierte
index.phpim Hauptverzeichnis und ändere die letzte Zeile wie im Beispiel unten. - Melde dich unter
https://example.com/wordpress/wp-admin/an, öffne Einstellungen → Permalinks und klicke ohne Änderung auf „Änderungen speichern“. So werden die Umschreibregeln neu geschrieben. - Ruf
https://example.com/auf und teste Startseite, einen Beitrag und das Backend.
Die entscheidende Zeile in der kopierten index.php:
// vorher
require __DIR__ . '/wp-blog-header.php';
// nachher (Ordnername anpassen)
require __DIR__ . '/wordpress/wp-blog-header.php';
Das Backend erreichst du danach weiterhin unter /wordpress/wp-admin/.
Alternative 1: Dokumentstamm beim Hoster umstellen
Die sauberste Lösung ist oft, die Domain direkt auf den Unterordner zeigen zu lassen. In Plesk heißt die Einstellung „Dokumentstamm“ in den Hosting-Einstellungen der Domain, bei anderen Hostern „Zielverzeichnis“ oder „Document Root“. Stellst du sie auf /wordpress um, sieht der Webserver den Ordner als Hauptverzeichnis. Dann setzt du in WordPress beide Adressen auf https://example.com und ersetzt alte Links mit dem Unterverzeichnis in der Datenbank, wie in WordPress-URL ändern beschrieben.
Alternative 2: Umleitung per .htaccess (für Fortgeschrittene)
Kannst du den Dokumentstamm nicht ändern und willst keine kopierte index.php, leitest du auf Apache-Servern alle Anfragen intern ins Unterverzeichnis um. Diese .htaccess gehört ins Hauptverzeichnis, Domain und Ordnername musst du anpassen:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$
RewriteCond %{REQUEST_URI} !^/wordpress/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /wordpress/$1 [L]
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$
RewriteRule ^(/)?$ wordpress/index.php [L]
</IfModule>
Zusätzlich stellst du die Website-Adresse wie oben auf die Hauptdomain. Auf reinen nginx-Servern greift die .htaccess nicht, dort braucht es eine entsprechende location-Regel in der Serverkonfiguration. Bei der Methode mit kopierter index.php bzw. unterschiedlichen Adressen sieht sie typischerweise so aus:
# Anfragen, die keine echte Datei sind, an WordPress im Unterordner geben
location / {
try_files $uri $uri/ /wordpress/index.php?$args;
}
Nach jeder Änderung prüfst du die Konfiguration mit nginx -t und lädst sie neu. Auf Shared Hosting mit nginx erledigt das meist der Hoster über eine Einstellung im Kundenmenü.
Per WP-CLI prüfst und setzt du die Adressen ohne Backend, zum Beispiel wenn du dich ausgesperrt hast:
wp option get home
wp option get siteurl
wp option update home 'https://example.com'
Wenn etwas schiefgeht
- Weiße Seite oder „Failed opening required“: Der Pfad in der kopierten
index.phpstimmt nicht. Prüfe den Ordnernamen auf Tippfehler und Groß-/Kleinschreibung. - Startseite geht, Beiträge liefern 404: Die
.htaccessfehlt im Hauptverzeichnis oder die Permalinks wurden nicht neu gespeichert. Mehr dazu unter Permalinks geändert, kein Zugriff mehr. - Ausgesperrt nach falscher Adresse: Trag in der
wp-config.phpvor der Zeile „That’s all, stop editing“ vorübergehenddefine( 'WP_HOME', 'https://example.com' );unddefine( 'WP_SITEURL', 'https://example.com/wordpress' );ein. Diese Werte überschreiben die Datenbank. - Bilder zeigen noch auf /wordpress/: Das ist unkritisch, die Dateien liegen dort ja. Schöner wird es erst mit der Dokumentstamm-Lösung.
Den kompletten Ablauf einer Installation beschreibt unser Leitfaden WordPress installieren. Weitere Antworten rund um Installation und Umzug findest du im Bereich Installation & Updates.
Frage dazu? Klappt die Umstellung bei deinem Hoster nicht? Frag im Forum „Installation & Setup“: Zum WPDE-Forum
Häufige Fragen
Muss ich WordPress dazu neu installieren?
Nein. Alle drei Wege funktionieren mit einer bestehenden Installation. Mach vorher trotzdem ein Backup.
Ist WordPress im Unterverzeichnis sicherer?
Nur minimal. Angreifer finden das Verzeichnis über Quelltext und Dateipfade schnell. Das Unterverzeichnis ist vor allem eine Frage der Ordnung, keine Sicherheitsmaßnahme.
Funktioniert das auch mit Multisite?
Bei einem Netzwerk ist die Konfiguration aufwendiger und sollte vor der Einrichtung geplant werden. Die offizielle Dokumentation zur Multisite-Vorbereitung beschreibt die Besonderheiten.