Apache Virtual Hosts, wie können wir sie in Ubuntu 20.04 konfigurieren?

über Virtual Host Apache

Im nächsten Artikel werden wir uns Apache Virtual Hosts ansehen. Zunächst muss dies erklärt werden Ein virtueller Host ist eine Apache-Konfigurationsanweisung, mit der wir mehr als eine Website auf einem einzelnen Server ausführen können. Die Tatsache, dass sie auf demselben physischen Server ausgeführt werden, ist für den Endbenutzer nicht offensichtlich.

Mit Virtual Hosts können wir das Stammverzeichnis der Site (das Verzeichnis, das die Website-Dateien enthält) angeben, eine separate Sicherheitsrichtlinie für jede Site erstellen, verschiedene SSL-Zertifikate verwenden und vieles mehr.

In den folgenden Zeilen werden wir sehen So konfigurieren Sie Apache Virtual Hosts unter Ubuntu 20.04und dafür müssen wir die folgenden Anforderungen erfüllen, bevor wir fortfahren können; ein oder mehrere Domainnamen, die auf die IP Ihres öffentlichen Servers verweisen, und ein unter Ubuntu installierter Apache.

Erstellen Sie die Verzeichnisstruktur

Das Dokumentstammverzeichnis ist das Verzeichnis, in dem Website-Dateien für einen Domainnamen gespeichert und als Antwort auf Anforderungen bereitgestellt werden. Wir können die Wurzel an dem Ort finden, der uns interessiert. Jede Domain wird auf der gehostet Apache-Server wird sein Dokumentstamm auf gesetzt / var / www / domain-name / public_html.

Lassen Sie die Erstellen Sie zunächst das Stammverzeichnis für die beiden Domänen was ich in diesem Beispiel verwenden werde:

Verzeichnisstruktur erstellen

sudo mkdir -p /var/www/dominio1.com/public_html
sudo mkdir -p /var/www/dominio2.com/public_html

auch Wir werden eine Datei erstellen index.html innerhalb des Dokumentenstammverzeichnisses jeder Domäne. Dies wird angezeigt, wenn wir die Domain über den Browser besuchen:

sudo vim /var/www/dominio1.com/public_html/index.html

In die Datei werden wir den folgenden Inhalt einfügen:



Home Code Domain1



 
<!DOCTYPE html>
<html lang="es">
  <head>
    <meta charset="utf-8">dominio1</title>
  </head>
  <body>    
<h1>Home del dominio1</h1>
  </body>
</html>

Für die zweite Domain bearbeiten wir die Datei index.html und fügen sie hinzu den folgenden Inhalt:

sudo vim /var/www/dominio2.com/public_html/index.html

Home Code Domain2

<!DOCTYPE html>
<html lang="es">
  <head>
    <meta charset="utf-8">dominio2</title>
  </head>
  <body>
<h1>Home del dominio2</h1>
  </body>
</html>

Da die oben genannten Befehle mit sudo ausgeführt werden, gehören die neu erstellten Dateien und Verzeichnisse root. Um Berechtigungsprobleme zu vermeiden, Wir werden den Besitz des Stammverzeichnisses der Domänen und aller Dateien in diesen Verzeichnissen auf den Apache-Benutzer (www-data) ändern.:

sudo chown -R www-data: /var/www/dominio1.com
sudo chown -R www-data: /var/www/dominio2.com

Erstellen Sie virtuelle Hosts

Auf Ubuntu-Systemen Die Konfigurationsdateien für virtuelle Hosts für Apache befinden sich im Verzeichnis / etc / apache2 / Websites-verfügbar. Sie können aktiviert werden, indem symbolische Links zum Verzeichnis erstellt werden / etc / apache2 / sites-enabled, die Apache beim Start liest.

Wir können die Konfigurationsdateien beliebig benennen. Aber Am besten verwenden Sie den Domänennamen als Namen der Konfigurationsdatei des virtuellen Hosts. Jetzt öffnen wir unseren bevorzugten Texteditor und erstellen die grundlegenden Konfigurationsdateien. Im Beispiel zeige ich nur den Code für domain1:

sudo vim /etc/apache2/sites-available/dominio1.com.conf

Im Inneren werden wir so etwas wie das Folgende hinzufügen, aber Für Domain2 müssen wir Domain1 im folgenden Code in Domain2 ändern:

virtueller Host für domain1

<VirtualHost *:80>
    ServerName dominio1.com
    ServerAlias www.dominio1.com
    ServerAdmin webmaster@dominio1.com
    DocumentRoot /var/www/dominio1.com/public_html

    <Directory /var/www/dominio1.com/public_html>
        Options -Indexes +FollowSymLinks
        AllowOverride All
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/dominio1.com-error.log
    CustomLog ${APACHE_LOG_DIR}/dominio1.com-access.log combined
</VirtualHost>
  • Server → Sie geben die Domäne an, die dieser Konfiguration des virtuellen Hosts entsprechen soll. Osten sollte der Domainname sein.
  • Serveralias → Alle die anderen Domänen oder Subdomänen, die für diesen virtuellen Host übereinstimmen sollten, wie das www.
  • DocumentRoot → Hier ist gibt das Verzeichnis an, aus dem Apache die Dateien bereitstellt.
  • Optionen → Diese Richtlinie Steuert, welche Serverfunktionen in einem bestimmten Verzeichnis verfügbar sind.
    • Indizes → Vermeiden Sie Verzeichnislisten.
    • FollowSymLinks → Wenn diese Option aktiviert ist, folgt Apache den symbolischen Links.
  • AllowOverride → Sie werden angeben, was In der .htaccess-Datei deklarierte Anweisungen können Konfigurationsanweisungen überschreiben.
  • Fehlerprotokoll, benutzerdefiniertes Protokoll → Hier geben Sie die an Speicherorte der Protokolldateien.

Sobald die Dateien gespeichert sind, werden wir sie aktivieren, um die neue virtuelle Hostdatei zu aktivieren Erstellen Sie eine symbolische Verknüpfung von der virtuellen Hostdatei zum Site-fähigen Verzeichnis. Wir werden dies mit dem Skript tun a2ensite:

a2ensite domain1

sudo a2ensite dominio1.com

Die andere Option ist Erstellen Sie manuell einen symbolischen Link wie es im folgenden gezeigt wird:

sudo ln -s /etc/apache2/sites-available/dominio1.com.conf /etc/apache2/sites-enabled/

Sobald dies erledigt ist, können wir Testen Sie die Konfiguration auf Syntaxfehler mit:

sudo apachectl configtest

Wenn keine Fehler vorliegen, wird im Terminal ein Ergebnis wie das folgende angezeigt:

Syntax ok

Wir machen weiter Neustart des Apache-Dienstes Damit die Änderungen wirksam werden:

sudo systemctl restart apache2

Um zu überprüfen, ob alles wie erwartet funktioniert, Wir werden die URL öffnen http://dominio1.com im Browser und wir sollten den Inhalt der index.html-Seite von domain1 sehen:

Domino zu Hause1

Mit virtuellen Hosts können wir mehrere Domänen auf einem einzigen Ubuntu-Server hosten. Wir können die in den vorherigen Zeilen beschriebenen Schritte wiederholen, um zusätzliche virtuelle Hosts für alle unsere Domänen zu erstellen.

Apache-Browser für virtuelle Hosts

Das Exponierte in diesem Artikel ist nur eine grundlegende Erklärung des virtuellen Hosts und seiner Konfiguration in Ubuntu. Es kann Weitere Informationen erhalten Sie unter Apache-Website.


Einen Kommentar, hinterlasse deinen

Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.

  1.   Carlos sagte

    Hallo, es hat mir sehr geholfen, virtuelle Hosts zu erstellen, aber beim Ausführen von apachectlconfest erhalte ich die folgende Fehlermeldung: „AH00558: apache2: Konnte den vollständig qualifizierten Domänennamen des Servers nicht zuverlässig ermitteln, wobei 127.0.1.1 verwendet wurde. Setzen Sie die Direktive „ServerName“ global, um diese Meldung zu unterdrücken
    Syntax OK»

    Ich weiß nicht, was falsch sein könnte