Richten Sie Apache2 VirtualHost für mehrere WordPress-Blogs ein

  • Cornelius Paul
  • 0
  • 3541
  • 241

Sie möchten also mehrere WordPress-Blogs auf einem einzigen Server hosten? Mit der Apache2 VirtualHost-Funktion können problemlos mehrere Websites auf einem einzigen Server ausgeführt werden. In diesem kurzen Tutorial erfahren Sie, wie Sie dies erreichen.

Jeder virtuelle Host wird unabhängig von den anderen ausgeführt. Wenn Sie also auf jedem VirtualHost eine WordPress-Website ausführen, wird diese so ausgeführt, als wäre sie die einzige Website auf dem Server. Auf diese Weise können Sie Kosten für zusätzliche Server und Ressourcen sparen.

Dieses Tutorial wird kurz sein ... und Ihre Zeit nicht mit anderen unnötigen Dingen verschwenden.

Schritt 1: Ubuntu Server einrichten

Ich finde Ubuntu einfach zu verwalten und zu warten, daher wird dieses Tutorial auf Ubuntu Linux basieren. Sie können Apache2 VirtualHost dazu bringen, auf anderen Linux-Distributionen zu arbeiten, aber Ubuntu ist eine großartige Distribution für neue Benutzer und Anfänger.

Installieren Sie Ubuntu mit Root-Zugriff und führen Sie die folgenden Befehle aus, um es zu aktualisieren.

sudo apt-get update && sudo apt-get dist-upgrade && sudo apt-get autoremove

Schritt 2: Installieren Sie Apache2 Web Server

Führen Sie nach dem Aktualisieren von Ubuntu die folgenden Befehle aus, um den Apache2-Webserver zu installieren.

sudo apt-get install apache2

Schritt 3: Installieren Sie MySQL Database Server

Führen Sie nach der Installation von Apache2 die folgenden Befehle aus, um den MySQL-Datenbankserver zu installieren.

sudo apt-get installiere mysql-server mysql-client

Während der Installation werden Sie aufgefordert, ein neues Kennwort für den MySQL-Root-Benutzer zu erstellen. Tu es! Dieses Passwort wird verwendet, um sich beim MySQL-Server anzumelden.

Schritt 4: Installieren Sie PHP und andere Module

Führen Sie nach der Installation des MySQL-Servers die folgenden Befehle aus, um PHP und andere PHP-Module zu installieren.
sudo apt-get installiere php libapache2-mod-php php-mysql php-curl php-gd php-birne php-imagick php-imap php-mcrypt php-recode php-ordentlich php-xmlrpc

Zu diesem Zeitpunkt sind alle Server und Pakete installiert, die WordPress zum Funktionieren benötigt. Die nächsten Schritte bestehen darin, WordPress-Datenbanken zu erstellen, Apache2 VirtualHosts zu konfigurieren und WordPress-Inhalte online herunterzuladen.

Schritt 5: Erstellen Sie WordPress-Datenbanken und Benutzer

Führen Sie die folgenden Befehle aus, um sich beim MySQL-Server anzumelden

sudo mysql -u root -p

WordPress benötigt eine Datenbank. Führen Sie die folgenden Befehle aus, um neue Datenbanken sowie Datenbankbenutzer zu erstellen. Duplizieren Sie einfach die Befehle für zusätzliche Datenbanken und Benutzer für so viele, wie Sie möchten. Stellen Sie sicher, dass alle eindeutige Namen haben.

Mit den folgenden Befehlen wird eine neue Datenbank mit dem Namen wpdatabase erstellt

CREATE DATABASE wpdatabase;

Mit den folgenden Befehlen wird ein neuer Datenbankbenutzer namens wpuser erstellt und dem Benutzer Zugriff auf die wpdatabase gewährt.

GRANT ALL ON wpdatabase. * TO 'wpuser' @ 'localhost' IDENTIFIED BY 'type_new_password_here';

[alert-note] Wiederholen Sie die obigen Schritte, um zusätzliche Datenbanken für zusätzliche WordPress-Sites zu erstellen. Erstellen Sie beispielsweise die Datenbank wpdatabase1, wpdatabase2 sowie die Benutzer für die zusätzlichen WordPress-Websites. [/ Alert-note]

Wenn Sie fertig sind, führen Sie die folgenden Befehle aus, um Ihre Änderungen zu speichern und zu beenden.

SPÜLPRIVILEGIEN; Ausfahrt 

Schritt 6: Erstellen Sie mehrere VirtualHost für mehrere Sites

Befolgen Sie nach dem Erstellen mehrerer Datenbanken für die mehreren WordPress-Sites, die Sie ausführen möchten, die nachstehende Anleitung, um mehrere VirtualHosts für die Sites zu erstellen. Kopieren Sie die Standard-Apache2-Site-Konfigurationsdatei, um zusätzliche VirtualHosts (Sites) zu erstellen..

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/example.com.conf sudo cp /etc/apache2/sites-available/000-default.conf / etc / apache2 /sites-available/example.net.conf 

Sie sehen, wir erstellen zwei virtuelle Hosts für zwei verschiedene Websites… (example.com.conf und example.net.conf)

Jede der oben genannten Site-Konfigurationsdateien hostet eine eindeutige Domain.

Öffnen Sie nun jede Datei, indem Sie die folgenden Befehle für jede…

sudo nano /etc/apache2/sites-available/example.com.conf

Konfigurieren Sie dann für die Datei example.com.conf die Datei Servername, Server-Alias ​​DocumentRoot und andere, die nur für die Domain example.com gelten. Wiederholen Sie dies für andere virtuelle Hosts.

 # Sie müssen es jedoch explizit für jeden weiteren virtuellen Host festlegen. Servername example.com ServerAlias ​​www.example.com ServerAdmin [email protected] DocumentRoot /var/www/html/example.com # Verfügbare Googlevels: trace8,…, trace1, Debug, Info, Hinweis, Warnung, # Fehler, krit, wachsam, emerg. # Es ist auch möglich, die Google-Ebene für bestimmte # Module zu konfigurieren, z. #LogLevel info ssl: warn ErrorLog $ APACHE_LOG_DIR /error.log CustomLog $ APACHE_LOG_DIR /access.log kombiniert # Für die meisten Konfigurationsdateien von conf-available /, die auf globaler Ebene # aktiviert oder deaktiviert sind, ist dies möglich um # eine Zeile für nur einen bestimmten virtuellen Host einzuschließen. Beispielsweise aktiviert die folgende Zeile # die CGI-Konfiguration für diesen Host # erst, nachdem er mit "a2disconf" global deaktiviert wurde. #Include conf-available / serve-cgi-bin.conf  # vim: syntax = apache ts = 4 sw = 4 sts = 4 sr noet

Führen Sie die obigen Schritte für alle Sites aus, die Sie hosten möchten. Jede Site hat eine eindeutige Identität, einschließlich DocumentRoot, Servername, ServerAlias ​​und Domäne

Wenn du fertig bist. Speichern Sie Ihre Änderungen und schließen Sie.

Aktivieren Sie als Nächstes die Sites, die Sie gerade erstellt haben, indem Sie die folgenden Befehle für jeden der virtuellen Hosts ausführen.

sudo a2ensite example.com.conf sudo a2ensite example.net.conf 

Aktivieren Sie auch andere Module

sudo a2enmod headers sudo a2enmod umschreiben sudo a2enmod env sudo a2enmod dir sudo a2enmod mime

Bewegen Sie nun den nächsten Schritt.

Schritt 7: Erstellen Sie jedes Verzeichnis für die Sites

Nachdem Sie die mehreren Sites in Apache2 konfiguriert haben, erstellen Sie die DocumentRoot-Ordner für jede der Sites, die Sie in der obigen Konfiguration definiert haben. Die Zeile, in der DocumentRoot gelesen wird, sollte mit jedem Speicherort übereinstimmen.

sudo mkdir -p /var/www/html/example.com sudo mkdir -p /var/www/html/example.net

Konfigurieren Sie die entsprechenden Ordnerberechtigungen für alle Sites

sudo chown -R www-Daten: www-Daten / var / www / html sudo chmod -R 755 / var / www / html 

Starten Sie den Apache2-Webserver neu, indem Sie die folgenden Befehle ausführen

sudo systemctl apache2 neu starten

Zu diesem Zeitpunkt sollten alle Ihre Websites bereits für WordPress-Inhalte sein. Laden Sie als Nächstes WordPress-Inhalte herunter und extrahieren Sie sie in die Dokument Root Ordner für jede Site.

Schritt 8: Laden Sie WordPress-Inhalte herunter

Laden Sie nun WordPress-Inhalte herunter und extrahieren Sie sie für jede Site in das Stammverzeichnis.

cd / tmp / && wget http://wordpress.org/latest.tar.gz

Extrahieren Sie dann die heruntergeladene Datei.

tar -xzvf latest.tar.gz

Und kopieren Sie für jede Site in jeden Stammordner.

sudo cp -R wordpress / * /var/www/html/example.com sudo cp -R wordpress / * /var/www/html/example.net 

Schritt 9: Konfigurieren Sie die WordPress-Datenbankeinstellungen

Führen Sie die folgenden Befehle aus, um WordPress zu erstellen wp-config.php Einstellungsdatei aus dem Beispiel.

sudo cp /var/www/html/example.com/wp-config-sample.php /var/www/html/example.com/wp-config.php sudo cp /var/www/html/example.net/wp -config-sample.php /var/www/html/example.net/wp-config.php

Dann öffnen wp-config.php Datei und nehmen Sie die folgenden hervorgehobenen Änderungen vor, um auf die Datenbank und den Benutzer zu verweisen, die Sie oben erstellt haben.

sudo nano /var/www/html/example.com/wp-config.php

Nehmen Sie beim Öffnen der Datei die Änderungen vor und speichern Sie sie.

// ** MySQL-Einstellungen - Sie können diese Informationen von Ihrem Webhost erhalten ** // / ** Der Name der Datenbank für WordPress * / define ('DB_NAME', 'wpdatabase'); / ** Benutzername der MySQL-Datenbank * / define ('DB_USER', 'wpuser'); / ** MySQL-Datenbankkennwort * / define ('DB_PASSWORD', 'type_password_here'); / ** MySQL-Hostname * / define ('DB_HOST', 'localhost'); / ** Datenbankzeichensatz zum Erstellen von Datenbanktabellen. * / define ('DB_CHARSET', 'utf8'); / ** Der Database Collate-Typ. Ändern Sie dies nicht, wenn Sie Zweifel haben. * / define ('DB_COLLATE', ");

Führen Sie die obigen Schritte für jede von Ihnen erstellte Site aus, und stellen Sie sicher, dass die Datenbankverbindungsinformationen für jede Site korrekt sind.

sudo systemctl apache2 neu laden

Öffnen Sie nun Ihren Webbrowser und navigieren Sie zu den Serverdomänen. Für jede Site sollte die WordPress-Standard-Setup-Seite angezeigt werden.

Genießen!




Bisher hat noch niemand einen Kommentar zu diesem Artikel abgegeben.

Eine Sammlung nützlicher Informationen zum Linux-Betriebssystem und zu neuen Technologien
Frische Artikel, praktische Tipps, ausführliche Rezensionen und Anleitungen. Fühlen Sie sich in der Welt des Linux-Betriebssystems zu Hause