Hosten mehrerer Websites Drupal-Sites

Es gibt viele Gründe, warum ein Systemadministrator oder Entwickler können mehrere Websites auf demselben Server in einer Multi-Site-Konfiguration hosten. Zum Beispiel, eine solche Konfiguration könnte:

  • Aktivieren Sie eine effiziente Entwicklungsumgebung bauen
  • Erlauben Sie eine Website zu inszenieren und zu testen, bevor es die Öffentlichkeit geht
  • Lassen Sie andere Software auf dem gleichen Gelände laufen
  • Aktivieren gemeinsame Nutzung einer einzigen Codebasis über mehrere Standorte
  • Leverage Shared-Hosting
  • Erlauben Sie ähnlich sicheren (HTTP über Secure Sockets Layer [HTTPS]) und Standard (HTTP) Websites auf dem gleichen Server laufen
  • Einfache Server-Administration

Nicht alle diese Gründe sind jedoch am besten mit Drupal Multi-Site-Funktion adressiert. Dieser Artikel konzentriert sich auf nur eine Strategie: Wie ist die Verwendung Drupal built-in Multi-Site-Unterstützung zu schaffen und mehrere Standorte von einer Instanz von Drupal zu dienen.

Hosten mehrerer Websites Drupal-Seiten haben sie

Grundsätzliche Überlegungen

Unter Verwendung des Drupal Content-Management-System (CMS), um eine Multi-Site-Konfiguration zu erstellen hat mehrere deutliche Vorteile, von denen ist, dass es wahrscheinlich die einfachste Konfiguration einzurichten und zu pflegen. Ein weiterer Grund ist, dass Datenduplizierung minimiert, da Drupal nur an einer Stelle auf dem Server installiert ist. Schließlich hat Drupal eine Fülle von Beiträgen Module, die verwendet werden können, Multi-Site-Behandlung zu erhöhen, erweiterte Funktionen zu allen Sehenswürdigkeiten in der Anordnung an. Die Kombination von zusätzlichen Funktionen und vereinfachte Verwaltung wäre ein Segen für jedermann sein will, um eine Multi-Site-Anordnung einzurichten und zu verwalten. Dennoch gibt es ein paar Nachteile eine solche Konfiguration verwendet wird, und zwei insbesondere deserve klar erwähnt: Sicherheit und des Teilens.

Die Standorte in einer Multi-Site-Installation teilen den gleichen Code und damit die gleichen Dateien. Als Ergebnis jeder, der Zugriff auf die auch alle Dateisystem hat für einen Standort des Servers erhält Zugriff auf Dateien für alle Websites auf diesem Multi-Site-Installation verwendet. In Fällen, in denen verschiedene Personen innerhalb der Anordnung verschiedenen Standorten verwalten, ist es vielleicht nicht ganz sicher sein. Wenn die Sicherheit zwischen Standorten ist ein Hauptproblem, oder wenn verschiedene Leute die verschiedenen Websites, Drupal-interne Multi-Site-Funktionalität möglicherweise nicht die beste Lösung zu verwalten. Stattdessen betrachten jede Site ihre eigene Drupal-Instanz geben. Obwohl die Vorteile der leichteren Verwaltung, die die Multi-Site-Anordnung hat verloren gehen, werden Ihre Webseiten besser von Pannen geschützt.

Die zweite Sorge - Sharing - Zentren rund um den Datenbankzugriff. Obwohl Drupal Multisites den gleichen Quellcode zu teilen, sie haben nicht die gleichen Datenbankdaten teilen. Somit Knoten, Benutzer und Kommentare in einer Website nicht zugänglich sind standardmäßig von anderen Websites. Dieses Verhalten kann eigentlich als eine gute Sache angesehen werden, aber in Situationen, in denen der Administrator kann verlangen, dass alle Websites, Informationen zu teilen, kann es eine Beschränkung für die Gestaltung von Drupal Multi-Site-Funktion sein. Dennoch ist der Sweet Spot für Drupal-interne Multi-Site-Unterstützung, die Module, Themen und auch zu einem gewissen Grad, Dateien hochgeladen hat, kann über alle Standorte gemeinsam genutzt werden. Darüber hinaus können die gleichen oder benutzerdefinierte Dateien in verschiedenen Ordnern beibehalten werden, um die verschiedenen Standorte in der Konfiguration entsprechen. Wenn es wichtig ist, dass alle Inhalte geteilt werden, sollten Sie eine Multi-Domain-Funktion, die sich leicht durch ein Modul mit dem gleichen Namen versehen ist.

Hosting

Installieren von Drupal für Multi-Site-Nutzung

(Siehe Verwandte Themen für einen Link) Nach dem Drupal-Archiv herunterladen, entpacken Sie die Datei und kopieren Sie die erstellten Ordner in das Dokumentstamm Ihres Webservers. Diese Aufgabe ist mit einem geeigneten FTP-Client nicht schwer; mit Secure Shell (SSH) Zugriff auf den Server, ist die Aufgabe noch einfacher. Einfach einen wget Befehl ausführen, um die Archivdatei aus dem Repository herunterladen und entpacken Sie die Drupal-Installationsordner zu erzeugen. (Wenn Sie Ihre Entwicklungsumgebung lokal ist, stehen für weitere Optionen durch.) Benennen Sie den Installationsordner / goodsite.

Drei verschiedene Standorte werden für diese Übung erstellt werden; Daher werden drei verschiedene Datenbanken erforderlich - eine für jede Website. Mit phpMyadmin vom Cpanel Ihres Servers wird diese Aufgabe leicht zu bewerkstelligen. Als nächstes installieren Sie den Rahmen. Zwei Aufgaben müssen durchgeführt werden, jedoch bevor Sie Ihren Web-Browser mit dem Installationsprogramm zu starten:

  • Geben Sie Drupal mit den Informationen, die es den Standorten muss über die Sie ausführen möchten.
  • Führen Sie die ortsspezifische Konfigurationsdaten von Drupal zu allen Standorten.

Um die erste Aufgabe zu erreichen, schafft für jeden Standort ein spezielles Verzeichnis. Für die zweite, eine Einstellungsdatei in jedem Verzeichnis suchen. Das Ziel ist, ein Master-Installation mit zwei Unterseiten einzurichten. Jede Subsite teilt die gleichen Dateien wie der Kern, aber jeder hat seine eigene separate URL und Datenbank. Die URLs der Websites erstellt werden soll:

Installieren des ersten Host

Drupal Quellcode in dem Dokumentstamm nach der Platzierung und die MySQL Datenbanken erstellt hat, damit beginnen, die erste Seite und die Haupt-Domäne zu installieren.

Die Master-Domain

Der Master-Domänenname ist die URL, von der der Hauptstandort wird (in diesem Artikel goodsite.com) zugegriffen werden. Der primäre Zweck der Hauptdomäne ist die Basis Drupalinstallation zu hosten. Unabhängig davon, ob diese Domain als eine Ihrer Websites verwendet wird, wenn keine Unterseiten ausfallen, wird ihre URLs standardmäßig an die Master-Domäne; Deshalb ist es eine gute Idee, dass diese Seite relevante Informationen zu den Unterseiten, wie Kontaktinformationen enthält.

Wie bereits erwähnt, muss ein Unterordner innerhalb des Haupt-Drupal-Ordner für jeden Unter Site erstellt werden. Was viele würden die schwierigste Aufgabe in Drupal Multi-Site-Installation vorstellen, ist einfach Routine: Lassen Sie Drupal wissen, welche Websites Sie hosten möchten, und einfach erstellen Unterordner für diese Websites im / Sites Ordner.

Im Hauptstammordner Drupal ist ein Verzeichnis mit dem Namen / sites. Wenn Sie vor dem Drupal verabreicht haben, wissen Sie alle Nicht-Kern-Code in diesem Ordner befinden sollte. In der Standard-Drupal-Installation, die / sites-Ordner enthält zwei Verzeichnisse. Die erste, genannt alle /, ist, wo Sie heruntergeladenen Themen und Module setzen sollte. Das alle / ist der Ort für Informationen über alle Standorte hinweg gemeinsam genutzt. Der zweite Ordner default / benannt ist, wo Konfigurationsdateien sollten, sowie Nicht-Kern und benutzerdefinierte Designs und Module gehalten werden. Drupal sucht typischerweise das default / Verzeichnis für die Standortkonfigurationsinformationen, wenn es nichts anderes angegeben ist. Beachten Sie jedoch, dass diese Annahmen für eine generische, Single-Host-Site - nicht unbedingt für eine Multi-Site-Installation.

Erstellen der Unterordner und Dateien

Ein großer Tipp auf mehrere Systeme Drupal für den Bau ist, dass abgesehen von dem alle / und default / Ordnern können andere Ordner in / Site erstellt werden und Drupal werden ihnen besondere Bedeutung zu. Genauer gesagt, geht davon aus Drupal, dass alle anderen in den / Websites gefunden Verzeichnisse einen Hostnamen oder einen Hostnamen Muster repräsentieren Ordner.

Sie erstellen einen Unterordner in den Muster / goodsite / sites / unter dem / site für alle Sub-Sites Ordner, und ersetzen Sie Ihre beabsichtigte URL für den Namen jeden Teil Site-Ordner. In diesem Beispiel haben Sie die folgenden Unterseiten, wie in Abbildung 1 dargestellt.

Für jede Unter Website, die folgenden Schritte aus:

  1. Kopieren Sie die Datei default.settings.php von sites / default auf jedem Unter Site-Ordner, und benennen Sie es settings.php.
  2. Verwenden Sie CHMOD die Erlaubnis auf settings.php auf 644 zu setzen, wenn es nicht die aktuelle Berechtigung ist.
  3. Für eine Drupal, Installation Version 6, erstellen Sie einen Ordner Dateien unter jedem Unter Website mit dem Namen, und verwenden Sie CHMOD die Erlaubnis, 755 zu ändern.

Dies ist ein Ordner in dem Drupal der Lage ist, Inhalte zu schreiben - in der Regel, hochgeladene Dateien, Bildminiaturen, aggregiert Cascading Style Sheet (CSS) und JavaScript-Dateien. Diese Dateien werden nicht in der Datenbank gespeichert sind, sondern im Dateisystem, so müssen Sie ein Verzeichnis, in dem sich diese Dateien befinden können.

Standardmäßig sucht Drupal für ein Unterverzeichnis namens Dateien / innerhalb des Verzeichnisses von jedem Standort. In einer Standard-Drupal-Installation, würden diese Ordner in site / default / files / sein.

  • Erstellen Sie einen Ordner Module für jeden Unter Website genannt.

    Dies ist der Ordner, in dem alle Module speziell für dieses Subsite befinden. Jegliche Module, die alle Seiten werden verwenden sollten in der sites / all / modules Ordner befinden.

  • Erstellen Sie einen Ordner Themen für jeden Unter Website genannt.

    Dies ist, wo alle Themen einzigartig für diesen Subsite platziert werden. Jedes Thema, das alle Seiten werden verwenden sollten in sites / all / themes residieren.

    Nun zeigen die Subsite URLs auf Ihren Webserver, wenn sie nicht von den gleichen Hosting-Unternehmen verwaltet werden. Wenn Sie verschiedene Hosts für die verschiedenen Seiten betrachten zu können, müssen Sie das Domain Name System (DNS) Informationen ändern (sowohl die Registrare und die Hosting-Unternehmen sollten Sie in der Lage sein zu sagen, wie dies zu tun). Danach müssen Sie die Domain auf Ihrer primären Domain „parken“ - in diesem Fall goodsite.com. Ab diesem Zeitpunkt haben Sie ein paar Alternativen, desto schwieriger wird davon beinhaltet die Verwendung, was ein symbolischer Link aufgerufen wird. Parken ist viel einfacher, jedoch; so in Ihrem Cpanel, klicken Sie auf geparkten Domains. In bettersite.com und bestsite.com in New Domain Name. und klicken Sie dann auf Add Domain.

    Erstellen der Multisites

    Es gibt mehrere Möglichkeiten, von hier zu gehen, aber auch hier wollen wir den einfachsten Weg nehmen: direkt auf die Datenbank für jede Subsite mit den in der Master-Installation vor Ort erstellten Tabellen geladen werden. Um dies zu tun, müssen Sie einen Dump der Datenbanktabellen aus dem Master-Ort-Installation erstellen und lokal speichern. Dann wird entweder laden Sie diese Datei mit phpMyadmin oder öffnen Sie einen Code-Editor. Um die zweite Option zu verwenden, führt diese Aufgaben innerhalb phpMyadmin:

    1. Gehen Sie auf die Datenbank für die Subsite erstellt.
    2. Zum SQL. und dann den gesamten Code einfügen aus der Structured Query Language (SQL) Dump dort.
    3. Klicken Sie auf Go.
    4. Dieses Verfahren gibt die Master-Standortdatenbanktabellen in der Subsite Datenbank.

      Als nächstes öffnen Sie die settings.php-Datei für jede Subsite und für die folgende Zeile aus:

      Ändern Sie diese Datenbank String verbinden, um die Parameter für die Subsite Datenbank widerspiegeln (Benutzername, Passwort, Host-Name, Datenbankname). Nun, wenn Sie zu bettersite.com gehen, sollten Sie den Standard „Willkommen auf Ihrer neuen Drupal-Website“ Seite erhalten, wie in Abbildung 2. Wiederholen Sie diese Schritte für alle weiteren Standorten gezeigt.

      Erstellen von Multisite von Sub-Domains

      Es gibt einen anderen Weg, um schnell Multisites zu erstellen, indem sie zuerst als Sub-Domains aus dem Cpanel Detaillierung. Bei diesem Verfahren werden Sie jedoch zunächst Ordner für jede Website unter / goodsite / site erstellen müssen, diesmal die folgende Konvention (siehe Abbildung 3):

      Beachten Sie, dass die Sub-Domain-Ordner mit den gleichen Namen wie der Sub-Domains selbst haben müssen. Nach wie vor eine Kopie default.settings.php in jedem Sub-Domain-Ordner abgelegt, die Dateinamen settings.php ändern. und Ausgabe CHMOD die Erlaubnis, 644 zu ändern.

      Nun zurück zum Cpanel und zwei Sub-Domains erstellen:

      Erstellen Sie einen symbolischen Link

      Ein symbolischer Link ist eine Datei, die einen Verweis auf eine andere Datei oder einen Ordner in Form eines absoluten oder relativen Pfad enthält, und erzeugt Pfadnamensauflösung zu beeinflussen. Verwenden Sie einen beliebigen Code-Editor eine Datei namens symlink.php zu erstellen. und fügen Sie dann Code ähnlich dem folgenden:

      In diesem Fall würde die Datei wie folgt aussehen:

      Diesen Symlink in dem Hauptverzeichnis der Haupt-Website, und es aus der URL goodsite.com/symlink.php laufen. Wenn die Code-Syntax gut ist, sollten Sie eine leere Seite sehen; Andernfalls werden Fehlermeldungen angezeigt. Optimieren Sie den Code in dieser Datei, bis es richtig herauskommt.

      konfigurieren Sie .htaccess

      Öffnen Sie nun die .htaccess-Datei in einem beliebigen Code-Editor. Suchen Sie die folgende Zeile ein:

      Entfernen Sie die Raute (#), und fügen Sie die folgende Zeile vor dem Speichern der Änderungen:

      Hier ist, was .htaccess sollte wie folgt aussehen, wenn Sie fertig:

      Diese Umleitung ist es möglich, sowohl goodsite.com/bettersite und bettersite.goodsite.com auf derselben Seite umgeleitet werden. Wenn alles richtig gemacht wurde, werden Sie auf der Installationsseite gerichtet werden, wenn Sie die Unter Site zugreifen URLs bettersite.goodsite.com und bestsite.goodsite.com.

      Mit allen Standorten installiert, ist es einfach von der Cpanel die Website bettersite.goodsite.com mit einer Umleitung auf die URL bettersite.com zu verknüpfen.

      Multi-Site auf einem lokalen Host läuft Ubuntu

      eine Multi-Site-Installation auf Ubuntu ist ein wenig komplizierter als das, was Sie bisher für Remote-Hosting getan haben. Multi-Site-Installation leicht werden kann in den folgenden Abschnitten unter Verwendung des Verfahrens erläutert konfiguriert.

      Erstellen Sie einen neuen Ordner Hosts

      Beginnen Sie, indem Sie einen Ordner namens goodsite in Ihrem Home-Ordner mit dem folgenden Code zu erstellen:

      Das Ergebnis sollte sein -> / home // Goodsite.

      Kopieren Sie nun alle Ihre Drupal-Dateien in diesem Ordner.

      Bearbeiten Sie die Hosts-Datei

      Bearbeiten Sie die Hosts-Datei durch ein Terminal-Fenster mit dem folgenden Befehl zu öffnen:

      Sie können dann eine beliebige Site-Namen im Format 127.0.0.1 mysite.com hinzuzufügen. In diesem Beispiel fügen Sie die folgenden Zeilen:

      Bearbeiten Sie die Seiten verfügbar

      Gehen Sie jetzt zu den sites-available Ordner eine Datei erstellen namens goodsite.com die folgenden Befehle:

      Der erste Befehl geht an den sites-available-Ordner; der zweite Befehl kopiert die Standarddatei und benennt sie goodsite.com. Der dritte Befehl öffnet die Datei goodsite.com zur Bearbeitung. Fügen Sie den Code gezeigt in 1 in die Datei auflistet.

      Speichern goodsite.com, aktivieren Sie es, und dann neu laden Apache mit den folgenden Befehlen:

      Erstellen Subsite Ordner

      Erstellen Sie Ihre Subsite im / sites Ordner / home / [Ihr ubuntu Login-Name] /goodsite/sites/bettersite.com und dann settings.php in den neuen Ordner hinzuzufügen. Wenn Sie bereits auf den Websites / Verzeichnis navigiert haben, kopieren Sie die settings.php-Datei mit dem folgenden Befehl ein:

      Führen sub-Ort-Installation

      Öffnen Sie Ihren Browser und geben Sie dann bettersite.com. Sie sollten die Installations-Setup-Seite. Sprechen Sie die settings.php Datei schreibgeschützt wieder Sicherheitsmeldungen zu vermeiden, führen Sie dann die Unter-Ort-Installation.

      Als nächstes einen Site-Ordner erstellen und die Installation für bestsite.com sowie alle anderen Unterseiten in Ihrer hosts Konfiguration erwähnt ausgeführt werden.

      Multi-Site-Module

      Die Module werden verwendet, um die Funktionalität eines grundlegenden Drupal-Installation und kommen in verschiedenen Kategorien zu erweitern, von administrativen tatsächlichen Performance-Verbesserung-Funktionalitäten. Mehrere Module können eine Multi-Site oder ähnliche Konfiguration bei der Erstellung unterstützen. Einzelheiten darüber, wie diese Module zu benutzen, wenden Sie für jedes Modul in der Installationsdokumentation.

      Die Domain Access-Module

      Die Domain Access-Module (siehe Verwandte Themen für einen Link) ermöglicht die Erstellung von Multi-Site einer einzige Code-Basis verwendet wird, eine gemeinsame Benutzerdatenbank und gemeinsame Sign-On, aber mit unterschiedlichen Inhaltsdatenbanken. Eine solche Konfiguration unterscheidet sich von dem, was wir in diesem Artikel gemacht haben. Domain-Zugang ist tatsächlich als eine Reihe von Modulen beschrieben, der mithilfe eines grundlegenden Drupal-Code eine Gruppe von Websites in einer einzigen gemeinsamen Datenbank installiert erleichtert ausgeführt wird. Diese Module ermöglichen alle Websites Benutzern zu teilen, Inhalte und Einstellungen, wenn sie vorkonfiguriert wurden, in einer solchen Art und Weise zu betreiben. Die Domain Access-Module verwenden Drupal Node Access System zu etablieren, welcher Inhalt auf jeder Seite in der Multi-Site-Anordnung zur Verfügung gestellt werden. Die Module im Gegensatz zu anderer Multi-Domain-Module steuert auch den Benutzerzugriff auf Basis der aktiven Domäne der Benutzer betrachtet, nicht auf der Grundlage der Gruppe oder Seite, auf welche der Benutzer gehört.

      Der Multisite-Manager-Modul

      Die Multisite-Manager (siehe Verwandte Themen für einen Link) ist ein Modul, das dazu beigetragen, Schaffung von neuen Drupal-Seiten von einer Basis Drupal-Website ohne die Notwendigkeit ermöglicht die Installation Datenbank zuzugreifen. Standardmäßig ist der neue Standort in der gleichen Datenbank wie die Basis-Installation installiert, aber mit einem anderen Präfix. Andernfalls, wenn der aktuelle Benutzer Zugriffsberechtigung hat eine Datenbank zu erstellen, könnte die Installation möglicherweise in dieser Datenbank durchgeführt werden.

      Schlussfolgerung

      Dieser Artikel untersuchte, wie eine Multisite Konfiguration mit Drupal als Basis CMS zu erstellen. Sie installierten die Master-Seite und befindet sich die Unterseiten innerhalb ihrer Verzeichnisstruktur. Sie haben gelernt, wie man mithilfe der administrativen Einrichtungen Ihre Hosting-Unternehmen bieten Multi-Site-Installationen auf einem Remote-Server ausgeführt werden. Sie haben auch gelernt, wie man eine Multi-Site-Installation auf einem lokalen Computer zu schaffen - insbesondere auf einem Computer mit Ubuntu Linux. Dieser Artikel ist auch zwei Drupal-Module vorgestellt, die Sie bei der Erstellung der beiden Multi-Site und Multi-Domain-Konfigurationen unterstützen.

      In Verbindung stehende Artikel

      Multi-Sites Drupal HostingWenn Sie mehr als eine Drupal-Website ausgeführt werden, können Sie das Management vereinfachen und Ihre Websites mithilfe der Multi-Site-Funktion aktualisieren. Multi-Site können Sie ein einseitiges Drupal teilen ...
      Hosten mehrerer Websites DrupalEs gibt viele Gründe, warum ein Systemadministrator oder Entwickler können mehrere Websites auf demselben Server in einer Multi-Site-Konfiguration hosten. Zum Beispiel, eine solche Konfiguration könnte: ...
      Hosting zwei Wordpress-Websites auf einem ServerMulti-Site-Funktion Wenn Sie mehrere Blogs mit Wordpress möchten, verwenden Sie Multi-Site-Funktion zu erstellen, was als ein Netzwerk von Websites verwiesen wurde. Diese Funktion wurde durch die Zusammenlegung WordPressMU implementiert ...
      Hosten mehrerer Websites Drupal TutorialDrupal Mutlisite Feature klingt wie der Heilige Gral für, wenn Sie mehrere Drupal-Seiten ausgeführt werden soll. die Antwort jedoch zu: „Soll ich Multisites verwenden?“ wird am besten durch das Wissen, was entdeckt ...
      Druckerfreundliche Seiten Drupal HostingDrupal ist ein robustes Content Management System, das auf einem LAMP-Server ausgeführt wird. Der LAMP-Server verwendet MySQL standardmäßig, aber PostgreSQL kann auch mit Drupal verwendet werden. Es kann Blogs, Foren Gastgeber und ...