Direkt zum Inhalt
Erstellen eines vhost

Was ist ein vhost?

Ein vhost, eine Abkürzung für „virtual host“, wird verwendet, um einem Webserver zu ermöglichen, mehrere verschiedene Websites auf einem einzigen physischen Rechner zu verwalten. Hier einige seiner Hauptfunktionen :

Isolierung von Websites: Ein vhost ermöglicht es, verschiedene Websites voneinander zu isolieren, d. h. jede Website kann ihre eigene Konfiguration, ihre eigenen Dateien und ihre eigenen Einstellungen haben, ohne andere Websites, die auf demselben Server gehostet werden, zu beeinträchtigen.

Verwaltung mehrerer Domainnamen: Durch die Verwendung von vhosts kann ein einzelner Server auf Anfragen für mehrere verschiedene Domainnamen antworten. Das bedeutet, dass separate Webseiten mit eindeutigen Domainnamen auf demselben Rechner gehostet werden können.

Verwendung von SSL/TLS-Zertifikaten: Die vhosts ermöglichen auch die Verwendung separater SSL/TLS-Zertifikate für jede Website, was für sichere Verbindungen über HTTPS unerlässlich ist.

Ressourcenoptimierung: Indem mehrere Websites auf einem einzigen Rechner zusammengefasst werden, ermöglichen vhosts eine effizientere Nutzung von Hardware- und Software-Ressourcen, was besonders für Server mit einer großen Anzahl an zu hostenden Websites von Vorteil sein kann.

Zusammenfassend lässt sich sagen, dass vhosts ein wichtiges Werkzeug für Administratoren von Webservern sind, da sie eine effiziente Lösung bieten, um mehrere Websites auf einer einzigen Infrastruktur zu hosten und dabei Isolation, Sicherheit und einfache Verwaltung zu gewährleisten.
 

Was ist eine hosts-Datei?

Die hosts-Datei ermöglicht die einfache Zuordnung von IP-Adressen zu Domainnamen, sodass Sie sich nicht jedes Mal an die IP-Adresse des Servers erinnern müssen.


nb : Für dieses Tutorial wird unsere Website opendata.tag sein.
 

Wie konfiguriere ich die hosts-Datei von Linux?


1- Öffnen Sie ein Terminal.


Um die hosts-Datei zum Bearbeiten zu öffnen, geben Sie den folgenden Befehl ein:

sudo nano /etc/hosts


er wird wie folgt präsentiert:


 

2. Fügen Sie einen neuen Eintrag zu hosts hinzu.


Jede Zeile in der hosts-Datei ist eine Zuordnung für eine einzelne IP-Adresse und sieht wie folgt aus:

   IP-Adresse Domainname


Zum Beispiel , könnten Sie die Adresse 127.0.0.1 der Domain opendata.tag zuordnen. Dieser Eintrag würde wie folgt aussehen (und am Ende der Datei hinzugefügt werden) :

      127.0.0.1 opendata.tag
um mit der Erstellung unseres virtuellen Hosts abzuschließen werden wir mit einem letzten Eintrag enden.

 

Erstellen eines Verzeichnisses, in dem die Dateien der Website gespeichert werden.

Wir werden folgendermaßen vorgehen:
 



ein Terminal öffnen

  

  1. cd /

    um in das Stammverzeichnis des Computers zu wechseln.

     

  2. den Befehl ausführen

    cd /var/www

     

    um auf den Ordner www zuzugreifen, wenn er existiert, ansonsten erstellen wir ihn mit dem Befehl und greifen dann darauf zu

  3. sudo mkdir www

     

  4. Dann erstellen wir ein Verzeichnis mit dem Namen unserer lokalen Website.

    sudo mkdir opendata

     

  5. Dann greifen wir mit dem Befehl

    cd opendata

     

  6. dann geben wir ihm alle Rechte.

    sudo chmod 777 .

     

     

Dann verschiebt man die Dateien der Website in dieses Verzeichnis.
 

Erstellen der .conf-Datei

 

 

 

 

  1. gehen wir in das Wurzelverzeichnis unseres Rechners.

    cd /

     

  2. man greift auf das Verzeichnis etc zu 

    cd /etc

     

  3. dann das Verzeichnis apache2

    cd apache2

     

  4. Innerhalb des apache2-Verzeichnisses greifen wir auf das Verzeichnis „sites-available“ zu, falls es existiert

    sudo mkdir sites-available

     

  5. man greift auf dieses Verzeichnis zu 

    cd sites-available


 

  1.   Dann ändern wir die .conf-Datei, wenn sie existiert.

    sudo nano monsite.conf


 

  1. im anderen Fall erstellen wir eine 
touch monsite.conf


wenden wir die folgende Konfiguration an:
 

<VirtualHost *:80>
        ServerAdmin usermail
        ServerName opendata.tag
        ServerAlias www.opendata.tag
        DocumentRoot /var/www/opendata
        <Directory /var/www/opendata>
                Options Indexes FollowSymLinks
                AllowOverride All
                Order Deny,Allow
                Allow from all
                DirectoryIndex disabled
           DirectoryIndex index.php
        </Directory>
    # preciser la version de PHP
           #<FilesMatch ".+\.php$">
           #        SetHandler "proxy:unix:/var/run/php/php8.1-fpm.sock|fcgi://localhost"
       #    </FilesMatch>
       ErrorLog /var/www/opendata/logs/error.log
        CustomLog /var/www/opendata/logs/access.log combined
</VirtualHost>


dann führen Sie den Befehl Strg+o zum Speichern und Strg+x zum Schließen aus.

 

Aktivieren der Konfigurationsdatei


Dazu führen Sie einfach den Befehl 

a2ensite opendata.conf

tarten Sie den Apache-Dienst mit dem Befehl neu.

sudo service apache2 restart


Gehen Sie zur Adresse Ihrer Website, um das Beispiel http://opendata.tag



Gut zu wissen:
Wenn Sie kein Verzeichnis erstellen, um die Dateien der Website in den Ordner var zu importieren, können Sie auch einen symbolischen Link auf den Ordner unserer Website
durch den Befehl erstellen.

in dem Fall, dass sich mein Ordner in /home/user/opendata befindet

ln -s /home/user/opendata /var/www/


erläuterungen zu elementen der konfigurationsdatei

 <VirtualHost *:80> : iese Zeile zeigt den Beginn der Definition des virtuellen Hosts an. Der * bedeutet, dass der virtuelle Host auf alle IP-Adressen des Servers lauscht, und die 80 bedeutet, dass er den Port 80 verwendet, der der Standardport für das HTTP-Protokoll ist.

•  ServerAdmin usermail : Diese Zeile gibt die E-Mail-Adresse des Serveradministrators an, die im Fehlerfall angezeigt wird.

•  ServerName opendata.tag : Diese Zeile gibt den Hauptdomainnamen des virtuellen Hosts an, der mit dem im DNS-System eingetragenen Namen übereinstimmen muss.

•  ServerAlias www.opendata.tag : Diese Zeile gibt einen oder mehrere alternative Domainnamen für den virtuellen Host an, die auf die gleiche Weise wie der Hauptname behandelt werden.


•  DocumentRoot /var/www/opendata : Diese Zeile gibt das Stammverzeichnis des virtuellen Hosts an, das die Dateien der zu bedienenden Website enthält.

•  <Directory /var/www/opendata> : Diese Zeile gibt den Beginn eines Abschnitts an, der spezifische Richtlinien für das Stammverzeichnis des virtuellen Hosts enthält.

•  Options Indexes FollowSymLinks : n dieser Zeile werden die Optionen für das Verzeichnis angegeben, die sein Verhalten steuern. Hier bedeutet Indexes, dass der Server, wenn keine Indexseite gefunden wird, eine Liste der Dateien im Verzeichnis anzeigt, und FollowSymLinks bedeutet, dass der Server den symbolischen Links im Verzeichnis folgt.

•  AllowOverride All : Diese Zeile gibt an, dass der Server .htaccess-Dateien im Verzeichnis zulässt, die zusätzliche oder andere Direktiven als in der globalen Konfiguration enthalten können.

•  Order Deny,Allow : Diese Zeile gibt die Reihenfolge an, in der der Server die Direktiven Deny und Allow auswertet, die den Zugriff auf das Verzeichnis steuern. Hier bedeutet Deny,Allow, dass der Server zuerst den Zugriff auf alle verweigert und dann den Zugriff auf diejenigen zulässt, die durch die Direktive Allow angegeben wurden.

•  Allow from all : Diese Zeile gibt an, dass der Server allen Besuchern den Zugriff auf das Verzeichnis ohne Einschränkungen erlaubt.

•  DirectoryIndex disabled : Diese Zeile gibt an, dass der Server nicht nach Indexseiten im Verzeichnis sucht, wie z. B. index.html oder index.php.

•  DirectoryIndex index.php : Diese Zeile gibt an, dass der Server die Datei index.php als Indexseite im Verzeichnis verwendet, sofern dieses existiert.

•  </Directory> : Diese Zeile zeigt das Ende des Abschnitts an, der die spezifischen Richtlinien für das Stammverzeichnis des virtuellen Hosts enthält.

•  # precise PHP version: Diese Zeile ist ein Kommentar, der vom Server nicht interpretiert wird. Sie dient dazu, dem Entwickler mitzuteilen, dass er die vom virtuellen Host verwendete PHP-Version angeben muss.

•  #<FilesMatch ".+\.php$"> : Diese Zeile ist ebenfalls ein Kommentar und enthält den Anfang eines Abschnitts, der spezifische Direktiven für die PHP-Dateien des virtuellen Hosts enthält. Das # bedeutet, dass die Zeile deaktiviert ist, und das .+.php$ bedeutet, dass der Abschnitt für alle Dateien gilt, deren Name mit .php endet.

•  # SetHandler "proxy:unix:/var/run/php/php8.1-fpm.sock|fcgi://localhost" : Diese Zeile ist auch ein Kommentar, der eine Direktive enthält, die angibt, welcher Handler für die PHP-Dateien des virtuellen Hosts verwendet werden soll. Das # bedeutet, dass die Zeile deaktiviert ist, und proxy:unix:/var/run/php/php8.1-fpm.sock|fcgi://localhost bedeutet, dass der Server das FastCGI-Protokoll verwendet, um mit dem PHP-FPM-Prozess zu kommunizieren, der die PHP-Dateien mit der PHP-Version 8.1 ausführt.

•  #</FilesMatch> :  Diese Zeile ist ebenfalls ein Kommentar und enthält das Ende des Abschnitts, der die spezifischen Direktiven für die PHP-Dateien des virtuellen Hosts enthält. Das # bedeutet, dass die Zeile deaktiviert ist.

•  ErrorLog /home/computeruser/Documents/error_log : Diese Zeile gibt die Datei an, in der der Server Fehlermeldungen in Bezug auf den virtuellen Host speichert.

•  CustomLog /var/www/my-nutribe/logs/access.log combined : Diese Zeile gibt die Datei an, in der der Server Informationen über die vom virtuellen Host empfangenen Anfragen unter Verwendung des combined-Formats aufzeichnet. Die Datei enthält Daten wie die IP-Adresse des Besuchers, Datum und Uhrzeit der Anfrage, die HTTP-Methode, die angeforderte URL, den Statuscode, die Größe der Antwort, den Referrer und den User-Agent.

•  </VirtualHost> : Diese Zeile zeigt das Ende der Definition des virtuellen Hosts an.

 

erstellung der dateien error.log und succes.log

Die Datei error.log und die Datei succes.log sind Beispiele für Log-Dateien, das sind Dateien, die den Verlauf von Ereignissen aufzeichnen, die auf einem Server, einem Computer oder einer Anwendung stattfinden. Diese Dateien sind nützlich, um die Nutzung zu verstehen, Fehler zu beheben, Statistiken zu erstellen oder Betrug zu verhindern.

Die Datei error.log enthält Informationen über Fehler, die im System aufgetreten sind, z. B. Ausnahmen, Bugs oder Fehlfunktionen. Sie ermöglicht es den Entwicklern, den Code zu debuggen und Probleme zu beheben.

Die Datei succes.log enthält Informationen über Operationen, die im System erfolgreich verlaufen sind, z. B. Anmeldungen, Transaktionen oder Validierungen. Sie ermöglicht es den Nutzern, das reibungslose Funktionieren des Systems zu überprüfen und Aktivitäten nachzuverfolgen.

um sie zu erstellen genügt es, ein Terminal zu öffnen
terminal
-Zugriff auf die Ordner der Website je nach ihrem Speicherort Abend in /var/www/opendata und erstellen Sie dann den Ordner logs.
Wenn wir die Ordner der Website über einen symbolischen Link importiert haben, gehen wir in den ursprünglichen Ordner und erstellen im Wurzelverzeichnis des Ordners unserer Website einen Log-Ordner.

Schließlich erstellen wir die Dateien error.log und succes.log mit dem Befehl 

touch error.log succes.log
Profile picture for user landry Landry

Écrit le

Il y'a 1 Jahr
Modifié
Il y'a 2 Tage
Lädt...
WhatsApp
Support Habeuk : +237 694 900 622
WhatsApp Send