Support » Allgemeine Fragen » Multisite – Domain Mapping

  • Gelöst snewi

    (@snewi)


    Hallo,
    mittlerweile habe ich meine Multisite am laufen und es funktioniert einwandfrei.
    Eine Frage habe ich aber nun noch. Ich habe also mehrere subdomains über die Multisite am laufen. Nun möchte ich natürlich die subdomain auf eine Hauptdomain zeigen lassen. Wo mache ich diese Einstellung und auf was sollte ich achten?

    LG

Ansicht von 15 Antworten - 16 bis 30 (von insgesamt 35)
  • Das mit dem

    define('COOKIE_DOMAIN', false); scheint funktioniert zu haben. Ich kann mich im Backend als Super Admin anmelden.

    Was jetzt noch nicht klappt ist das ich mit nem anderen std User mich nicht über das Frontend (Login-Maske) nicht anmelden kann:

    Recoverable fatal error: Object of class WP could not be converted to string in /www/htdocs/w015a8d2/mein-ort-hats.de/wp-includes/class-wp-hook.php on line 286

    • Diese Antwort wurde geändert vor 5 Monate, 3 Wochen von snewi.

    Hast du den Browser-Cache mal gelöscht?
    Das könnte auch ein Problem mit einem Theme oder Plugin sein.

    Füg bitte in der wp-config.php auch folgende Zeile ein:

    define( 'NOBLOGREDIRECT', '' );

    mit domain hintendran? oder nur “

    Beides ist möglich, also entweder nur '' (zu nichts umleiten) oder https://example.com (auf https://example.com umleiten).

    Es geht im Grunde darum, was passiert, wenn Benutzer eine (Sub-)Domain eingeben, die nicht zugeordnet ist.

    jetzt kommt nicht mehr der Fehler. aber jetzt wird versucht auf die herzlich willkommen Seite umzuleiten unter der subdomain. und die subdomain gibts ja anscheinend nicht mehr 🙁
    liegt vielleicht daran, das ich umleite auf die subdomain adresse.

    • Diese Antwort wurde geändert vor 5 Monate, 3 Wochen von snewi.

    Dann versuch es mal mit einem leeren String: define( 'NOBLOGREDIRECT', '' );

    Jetzt klappt wieder gar nichts mehr. Egal mit welchem User ich mich anmelde kommmt:

    Fehler: Umleitungsfehler

    Sollte ich denn jetzt deinen anderen Link wo Änderungen in der functions.php und .htacess gemacht werden sollten auch umsetzen. und mit den Cookie Konstanten.

    Was ist hier denn eigentlich das genaue Problem?

    LG

    Würde es unter Umständen klappen, dass ich beim Hoster von der SubDomain auf die Domain umleite und die Domain dann auf das Multisite Verzeichnis schaut?

    Dann bräuchte ich doch nix ändern und könnte alles im Urzustand lassen der funktioniert hat

    Wenn du dich bei einer normalen WordPress-Website anmeldest, setzt WordPress einen Cookie zur Bestätigung einer erfolgreichen Anmeldung. Ist der Cookie nicht vorhanden oder passen die Daten im Cookie nicht zur Website, wird der Zugriff verweigert.

    In diesem Beispiel siehst du den Anmelde-Cookie mit der gespeicherten Domain meiner lokalen Testumgebung (https://wp.local):

    Screenshot Developer Tools zeigt Cookie mit Cookie-Domain.

    Das Problem ist, dass du nicht mit dem Cookie der Domain A auf die Anmeldung der gemappten Domain B zugreifen kannst. Damit WordPress trotzdem Cookies zur Autorisierung verwenden kann, gibst du mit der Konstante define('COOKIE_DOMAIN', false); an, dass der Textstring für die Cookie-Domain leer bleiben soll.

    define( 'ADMIN_COOKIE_PATH', '/' );
    define( 'COOKIEPATH', '' );
    define( 'SITECOOKIEPATH', '' );

    sind ähnliche Angaben, die verhindern sollen, dass du dich auf jeder Unter-Website der Multisite zum Zugang zu wp-admin neu anmelden musst. Für ein Domain-Mapping dürfte das aber unerheblich sein.

    Arbeitest du mit Subdomains oder Unterverzeichnissen, stellt sich die Frage, was bei der Eingabe unbekannter Subdomains oder Unterverzeichnisse geschehen soll. Grundsätzlich kannst du in den Einstellungen eingeben, dass Benutzer neue Sites mit diesem Subdomain-/Unterverzeichnis anlegen dürfen. Dürfen sie das nicht, scheint das Ergebnis ein Fehler zu sein.
    Mit define( 'NOBLOGREDIRECT', 'https://example.com' ); leitest du statt dessen auf eine vorgegebene Adresse (hier: https://example.com) um. Ein Ergebnis ist auch, dass die Fehlermeldung wird nicht mehr angezeigt.

    Ich habe jetzt nochmal rasch in eine Installation geschaut, die ich vor Kurzem für eine Kundin durchgeführt habe. Die (für die Multisite relevanten) Einträge in der wp-config.php sehen dort so aus:

    
    /* Multisite */
    define( 'WP_ALLOW_MULTISITE', true );
    
    define( 'MULTISITE', true );
    define( 'SUBDOMAIN_INSTALL', true );
    define( 'DOMAIN_CURRENT_SITE', 'example.com' );
    define( 'PATH_CURRENT_SITE', '/' );
    define( 'SITE_ID_CURRENT_SITE', 1 );
    define( 'BLOG_ID_CURRENT_SITE', 1 );
    
    define( 'COOKIE_DOMAIN', $_SERVER['HTTP_HOST'] );
    define( 'NOBLOGREDIRECT', 'https://example.com' );

    Diese Einstellungen reichen, allerdings war wichtig den Browser-Cache und vorhandene Cookies zu löschen.

    Die Idee mit der Umleitung ist aus verschiedenen Gründen nicht gut:

    • die Kunden sollen vermutlich gleich die URL mit der neuen Domain eingeben – donst hättest du dir das Domain-Mapping ja schenken können.
    • Du möchtest auch nicht jeden Webseitenaufruf erst umleiten, weil das unnötig Zeit kostet.
    • Spätestes mit Umleitung wird die gemappte Domain verwendet … und die muss in WordPress richtig hinterlegt sein.

    Also mit deinen Einstellungen von deinem Kunden und löschen des Caches läuft jetzt alles.
    Danke schonmal 🙂

    Eine Frage stellt sich aber jetzt nach deinem letzten Beitrag irgendwie trotzdem: Meinst du ein Domain-Mapping lohnt sich gar nicht und ich sollte einfach nur beim Hoster ein Redirect von der Subdomain auf die Hauptdomain zu machen?

    LG

    Meinst du ein Domain-Mapping lohnt sich gar nicht und ich sollte einfach nur beim Hoster ein Redirect von der Subdomain auf die Hauptdomain zu machen?

    🤯

    Das muss der Grund sein, wieso es im Developer Handbook ein Kapitel gibt „Brauchst du überhaupt ein Netzwerk?“

    https://wordpress.org/support/article/before-you-create-a-network/#do-you-really-need-a-network

    Wenn du deine Subdomains auf eine andere Domain umleitest, passiert … was genau?

    Du kannst für diese Domain auf die weitergeleitet wird in einem anderen Verzeichnis natürlich eine neue WordPress-Instanz installieren – und dann noch eine und noch eine … Nur hast du dann irgendwann auch dreiundzwölfzig unabhängige WordPress-Installationen, die alle einzeln gepflegt (d.h. vor allem laufend aktualisiert) werden müssen. Bei jeder Website musst du dazu ein Backup anlegen, Aktualisierungen durchführen und zumindest eine Sichtprüfung vornehmen. Deshalb macht eine Multisite schon Sinn. Sie ist eben nur nicht trivial.

    Ja aber diese Netzwerkfunktion spiegelt eigentlich genau das wieder was ich brauche. Und sie läuft ja ausser eben das Domain Mapping. Was soll ich hier jetzt tun? Redirect vin Sub auf Hauptdomain und gut. Hat das nachteile für seo? Oder wirklich versuchen die Hauptdomain anzusprechen?

    LG

    • Diese Antwort wurde geändert vor 5 Monate, 3 Wochen von snewi.

    Sorry, ich kann dir nicht mehr folgen.

    Also mit deinen Einstellungen von deinem Kunden und löschen des Caches läuft jetzt alles.

    heißt für mich „läuft“.

    Und sie läuft ja ausser eben das Domain Mapping

    heißt für mich „läuft überhaupt nicht“.

    Vielleicht kannst du das mal etwas detaillierter beschreiben?

    Redirect vin Sub auf Hauptdomain und gut.

    soll bitte genau was heißen? Welche Subdomains willst du auf welche Hauptdomain redirecten? Was passiert bei Aufruf der Hauptdomain?

    Domain-Mapping bedeutet doch: Ich schalte eine neue Domain auf eine WordPress-Multisite so auf, dass einer der dort installierten Blogs angezeigt wird.
    Dass du bei der Installation eine Subdomain eingerichtet hast, mag irgendwann mal Teil deines Arbeitsablaufs gewesen sein, ist aber seitdem du das mit der URL zur neuen Domain überschrieben hast längst Geschichte. Deshalb hättest du dir die Einrichtung der Subdomain im Kundenmenü des Webhoster sogar sparen können. Welche Rolle soll also die Subdomain jetzt spielen?
    Setzt du die Website zurück auf die Subdomain, indem du die URL erneut änderst, kann WordPress mit der neuen Domain nichts anfangen – sie ist ja nirgendwo mehr eingetragen.

Ansicht von 15 Antworten - 16 bis 30 (von insgesamt 35)