So hosten Sie zwei oder mehr Sites auf dem beliebten und leistungsstarken Apache-Webserver. In meinem letzten Artikel habe ich erklärt, wie man den Apache-Webserver für eine einzelne Site konfiguriert, was sich als recht einfach herausstellte. In diesem Artikel zeige ich Ihnen, wie Sie mit einer einzelnen Apache-Instanz mehrere Sites bedienen. Hinweis: Ich habe diesen Artikel auf einer virtuellen Fedora 27-Maschine mit Apache 2.4.29 geschrieben. Wenn Sie eine andere Distribution oder eine andere Version von Fedora verwenden, können die von Ihnen verwendeten Befehle sowie der Speicherort und Inhalt der Konfigurationsdateien unterschiedlich sein. Wie ich in meinem vorherigen Artikel erwähnt habe, befinden sich alle Apache-Konfigurationsdateien in /etc/httpd/conf und /etc/httpd/conf.d. Standardmäßig befinden sich die Daten der Site in /var/www. Für mehrere Sites müssen Sie mehrere Standorte angeben, einen für jede gehostete Site. Namensbasierte virtuelle Hosts Mit namenbasiertem virtuellem Hosting können Sie eine einzelne IP-Adresse für mehrere Sites verwenden. Moderne Webserver, einschließlich Apache, verwenden den Hostnamenteil einer gegebenen URL, um zu bestimmen, welcher virtuelle Webhost auf eine Seitenanforderung antwortet. Dies erfordert lediglich mehr Konfiguration als eine einzelne Site. Auch wenn Sie nur mit einer einzigen Site beginnen, empfehle ich, sie als virtuellen Host einzurichten, damit Sie später einfacher weitere Sites hinzufügen können. In diesem Artikel beginne ich dort, wo wir im vorherigen Artikel aufgehört haben. Sie müssen also die ursprüngliche Site einrichten, bei der es sich um die namensbasierte virtuelle Site handelt. Vorbereiten der ursprünglichen Site Bevor Sie Ihre zweite Site einrichten können, benötigen Sie ein namenbasiertes virtuelles Hosting für Ihre bestehende Website. Wenn Sie noch keine Site haben, gehen Sie zurück und erstellen Sie jetzt eine. Sobald die Site aktiv ist, fügen Sie am Ende Ihrer Konfigurationsdatei <VirtualHost 127.0.0.1:80> Dokumentstammverzeichnis /var/www/html Servername www.site1.org </VirtualHost> Dies ist der erste Konfigurationsabschnitt des virtuellen Hosts und sollte auch der erste bleiben, um ihn zur Standarddefinition zu machen. Dies bedeutet, dass der HTTP-Zugriff auf den Server über die IP-Adresse oder andere Namen, die zu dieser IP-Adresse aufgelöst werden, aber keinen bestimmten benannten Host-Konfigurationsabschnitt haben, an diesen virtuellen Host weitergeleitet werden. Alle anderen Konfigurationsabschnitte für den virtuellen Host sollten diesem folgen. Sie müssen Ihre Website auch mithilfe von Einträgen in /etc/hosts einrichten, um die Namensauflösung zu ermöglichen. Letztes Mal haben wir einfach die IP-Adresse von localhost verwendet. Normalerweise können Sie hierfür den von Ihnen genutzten Namendienst verwenden, z. B. Google oder Godaddy. Tun Sie dies für Ihre Testsite, indem Sie der Zeile „localhost“ in /etc/hosts einen neuen Namen hinzufügen. Fügen Sie Einträge für beide Sites hinzu, damit Sie diese Datei später nicht erneut bearbeiten müssen. Die Ergebnisse sind wie folgt: 127.0.0.1 lokaler Host lokaler Host.localdomain lokaler Host4 lokaler Host4.localdomain4 www.site1.org www.site2.org Ändern wir die Datei /var/www/html/index.html, damit sie etwas deutlicher wird. Es sollte ungefähr so aussehen (mit etwas zusätzlichem Text, um zu kennzeichnen, dass dies Site 1 ist): <h1>Hallo Welt</h1> Website 1. Starten Sie den HTTPD-Server neu, um die Änderungen an der HTTPD-Konfiguration zu aktivieren. Sie können dann den Lynx-Textmodus verwenden, um die Site von der Befehlszeile aus anzuzeigen. [root@testvm1 ~]# systemctl restart httpd [root@testvm1 ~]# lynx www.site1.org Hallo Welt Website 1. <Ausschnitt> Befehle: Verwenden Sie die Pfeiltasten zum Bewegen, „?“ für Hilfe, „q“ zum Beenden und „<-“, um zurückzugehen. Pfeiltasten: Nach oben und nach unten zum Bewegen. Nach rechts, um einem Link zu folgen. Nach links, um zurückzugehen. H)ilfe O)ptionen D)rucken G)ehe zum H)auptbildschirm Beenden /=Suchen [Löschen]=Verlaufsliste Sie können die Änderungen an der ursprünglichen Website ohne offensichtliche Fehler sehen. Drücken Sie Q und dann Y, um den Lynx-Webbrowser zu beenden. Konfigurieren der zweiten Site Jetzt sind Sie bereit, Ihre zweite Website zu erstellen. Verwenden Sie den folgenden Befehl, um eine neue Website-Verzeichnisstruktur zu erstellen: [root@testvm1 html]# mkdir -p /var/www/html2 Beachten Sie, dass die zweite Site lediglich ein zweites HTML-Verzeichnis ist, das sich im selben Verzeichnis /var/www wie die erste Site befindet. Erstellen Sie nun eine neue Indexdatei <h1>Hallo Welt – nochmal</h1> Website 2. Erstellen Sie in httpd.conf einen neuen Konfigurationsabschnitt für die zweite Site und platzieren Sie ihn unterhalb des vorherigen Konfigurationsabschnitts für den virtuellen Host (die beiden sollten sehr ähnlich aussehen). Dieser Abschnitt teilt dem Webserver mit, wo die HTML-Dateien für die zweite Site zu finden sind. <VirtualHost 127.0.0.1:80> Dokumentstammverzeichnis /var/www/html2 Servername www.site2.org </VirtualHost> Starten Sie HTTPD neu und verwenden Sie Lynx, um die Ergebnisse anzuzeigen. [root@testvm1 httpd]# systemctl restart httpd [root@testvm1 httpd]# lynx www.site2.org Hallo Welt – nochmal Website 2. <Ausschnitt> Befehle: Verwenden Sie die Pfeiltasten zum Bewegen, „?“ für Hilfe, „q“ zum Beenden und „<-“, um zurückzugehen. Pfeiltasten: Nach oben und nach unten zum Bewegen. Nach rechts, um einem Link zu folgen. Nach links, um zurückzugehen. H)ilfe O)ptionen D)rucken G)ehe zum H)auptbildschirm Beenden /=Suchen [Löschen]=Verlaufsliste Hier habe ich die Ausgabe komprimiert, damit sie in diesen Bereich passt. Der Unterschied in den Seiten zeigt an, dass dies die zweite Site ist. Um zwei Sites gleichzeitig anzuzeigen, öffnen Sie eine weitere Terminalsitzung und verwenden Sie den Lynx-Webbrowser, um die andere Site anzuzeigen. Weitere Überlegungen Dieses einfache Beispiel zeigt, wie Sie mit einer einzelnen Instanz des Apache HTTPD-Servers zwei Sites bedienen. Die Konfiguration virtueller Hosts kann etwas komplizierter werden, wenn andere Faktoren berücksichtigt werden. Beispielsweise möchten Sie möglicherweise einige CGI-Skripte für eine oder alle dieser Sites verwenden. Zu diesem Zweck können Sie einige Verzeichnisse für CGI-Programme unter dem Verzeichnis /var/www erstellen: Auf der Apache-Website werden weitere Methoden zur Verwaltung mehrerer Sites sowie Konfigurationsoptionen von der Leistungsoptimierung bis zur Sicherheit beschrieben. Apache ist ein leistungsstarker Webserver, der zum Hosten einfacher bis hochkomplexer Websites verwendet werden kann. Obwohl sein Gesamtmarktanteil schrumpft, ist er immer noch der am häufigsten verwendete HTTPD-Server im Internet. Das könnte Sie auch interessieren:
|
<<: JavaScript imitiert den Jingdong-Karusselleffekt
>>: Hauptfunktionen von InnoDB - Cache einfügen, zweimal schreiben, adaptive Hash-Indexdetails
Kriegspaket vorbereiten 1. Bereiten Sie das vorha...
1. Problem Die bei der Initialisierung von MySQL ...
Inhaltsverzeichnis 1. Unterschiede zwischen Optio...
Der LIKE-Operator wird in der WHERE-Klausel verwe...
Eine einfache Nummernschild-Eingabekomponente (vu...
In diesem Artikel wird der spezifische Code von V...
In diesem Artikel wird der spezifische Code von j...
Seitenverzeichnisstruktur Beachten Sie, dass Sie ...
Da es in dem Produkt meiner Firma eine Schaltfläc...
In diesem Artikel wird der spezifische Code von V...
Manche Leute sagen, dass Werbung machen wie ein Me...
Vorwort In vielen Fällen werden wir virtuelle Mas...
Vorwort Komponenten sind etwas, das wir sehr häuf...
Dieses Projekt teilt den spezifischen Code von Vu...
Dieses Mal werden wir versuchen, den laufenden Co...