Können die Blogs einer Multisite von zwei verschiedenen Subdomains aus aufgerufen werden?


8

Schneller Hintergrund:

Wir haben eine einzige WordPress-Instanz mit aktiviertem Multisite, die drei separate Blogs hostet. (blog.example.com/blog1, blog.example.com/blog2, blog.example.com/blog3).

Diese Multisite wird auf einer Webschicht von vier Servern verteilt, die alle auf dieselbe Datenbank zugreifen. Ich verstehe, blogs.dirdass dies über die Webschicht hinweg synchronisiert werden muss, damit Medien vorhanden sind, unabhängig davon, auf welchen Server ein Client trifft.

Frage:

Kann ich einen fünften Webserver (dh post.example.com) haben, dessen einziger Zweck darin besteht, den Redakteuren die Anmeldung und Veröffentlichung neuer Inhalte für eines der drei Blogs zu ermöglichen? Auf diese Weise sind die Server mit Lastenausgleich nur Empfänger von hochgeladenen Inhalten von post.example.com.

Ich weiß, dass der Synchronisierungsteil möglich ist, bin mir aber nicht sicher, wie WordPress so eingerichtet werden soll, dass es von zwei verschiedenen Subdomains aus zugänglich ist. Ist das möglich?

Bearbeiten: Ich sollte hinzufügen, dass ein zusätzliches Ziel durch das Einrichten auf diese Weise ist, dass wir hoffen, durch Dunkelheit etwas Sicherheit zu erlangen, indem wir den Zugriff /wp-admin/auf die Webebene blockieren , sodass Sie sich nur von einem Webserver ( post) aus anmelden können , aber von Natürlich hängt alles von der oben genannten Frage ab. :) :)

Mock unten:

Mock WordPress-Architektur


2
Ich werde darüber nachdenken, ob ich eine Antwort auf Ihre gestellte Frage finden kann. Eine Sache, die in den Sinn kommt, was ernsthafte Sicherheit durch Dunkelheit bedeuten würde, wäre die Verwendung einer Host-Überschreibung, um blog.example.com auf den "Post" -Server zu verweisen. Wenn Sie nicht möchten, dass alle Autoren ihre Hosts-Datei bearbeiten müssen, können Sie einen VPN-Server einrichten (etwas Grundlegendes wie einen Pptp-Server) und Ihre Benutzer eine Verbindung herstellen und den gesamten Datenverkehr über VPN weiterleiten lassen. Auf diese Weise wird blog.example.com im VPN an einen Ort und im VPN an einen anderen Ort verschoben.
Matthew Boynes

@MatthewBoynes Danke für deine Antwort! Leider kann ich keine Aktualisierungen der Hostdateien und / oder keine VPN-Verwendung erzwingen. Unsere Editoren sind lokal und remote und verwenden immer unterschiedliche Geräte.
Kai

Antworten:


5

Ja, dies ist möglich und eine Reihe von Nachrichten- und Medienagenturen arbeiten mit ähnlichen Ansätzen in WordPress.

Was ist Ihr redaktioneller Prozess?
Der wichtigste Schritt besteht darin, Ihren Redaktionsprozess zu verstehen und zu verstehen, wie viel Kontrolle Sie über Inhalte haben müssen, bevor diese live geschaltet werden.
- Berücksichtigen
Sie beispielsweise die folgenden drei Punkte: 1. Benötigen Sie Genehmigungen von Drittanbietern für Bilder?
2. Müssen Sie oder Ihr Kunde Kopie / Bilder / Video / Layout abmelden, bevor Inhalte veröffentlicht werden?
3. Arbeiten Sie als Redakteur an verschiedenen Wochen oder Themen und planen, Inhalte Wochen im Voraus live zu schalten ...

Wenn Sie eine dieser Fragen mit "Ja" beantwortet haben, ist eine einzelne Datenbank, die von Ihrem Pre-Live / Staging-Server und Ihrem Live-Server gemeinsam genutzt wird, nicht möglich. Warum fragst du? weil ein neuer Beitrag veröffentlicht werden muss, bevor er von Nichtbenutzern oder Dritten gesehen werden kann, die Sie nicht auch anmelden möchten. (Übrigens ... mit Zeit, Geld und Fähigkeiten ist alles möglich, um Benutzerrollen und Zugriffsebenen anzupassen.)

Also zurück zur skalierbaren WordPress-Lösung

DOMAIN A (was Ihre Kunden und Besucher besuchen) muss auf einen HTTP Load Balancer verweisen.

Der Load Balancer leitet den Kundenverkehr an einen von mehreren Webservern weiter. Diese Slave-Server werden mit einem MASTER-Server in LSYNC gehalten.

Idealerweise sollten 2 separate DB-Server vorhanden sein (für Lese- / Schreibanforderungen und Skalierung mit Lastenausgleich). Sie können viel READ-Verkehr von Besuchern erwarten, möchten jedoch sicherstellen, dass der WRITE-Verkehr von neuen Posts usw. Ihre READ-Anforderungen nicht unterbricht.

DOMAIN A kann auch auf einen HTTPS-Load-Balancer verwiesen werden, der so konfiguriert ist, dass
1. nur Datenverkehr von Ihrer Office-IP-Adresse zugelassen wird und 2. SSL-Verbindung für Admin / Login erzwungen wird.

Dies ist eine einfache Änderung der wp-config.phpDatei.

Hier ist ein Diagramm dessen, was wir erstellt haben (mit Unterstützung von Rackspace). Rackspace-skaliertes WordPress

HyperDB
Am Ende haben wir HyperDB eingerichtet, um die mehreren DB-Server und -Anforderungen zu verwalten. Dies war auch einfach, da es sich meistens um ein Plugin mit einem langen Konfigurationsskript handelt.

W3TC W3 Total Cache
Wir haben auch HyperDB- und W3TC-Setup. Dies hat auch die DB-Server stark belastet

Der Hauptgrund, warum wir W3TC verwendet haben, war, den gesamten statischen Inhalt in Rackspace zu laden. Das Setup des Content Delivery Network in W3TC ist ebenfalls sehr einfach :)

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.