Apache Webserver: virtuellen Host einrichten

Wie richte ich einen virtuellen Host in einem Apache Webserver ein?

Konfigurationsdatei erstellen

Zuerst erstellen wir die Konfigurationsdatei. Dies können wir mit VIM oder Nano erledigen:

vim /etc/apache2/sites-available/server.andydunkel.net.conf

Der Name ist frei wählbar, ich wähle hierbei den Domainnamen als Dateinamen.

Inhalt der Konfigurationsdatei

Die Datei befüllen wir mit folgenden Inhalt, welchen wir natürlich anpassen. Hier können wir das Verzeichnis festlegen, die Log-Dateien. Mittels “AllowOverride all” schalten wir zudem die Möglichkeit für .htaccess Dateien frei.

<VirtualHost *:80>
    ServerAdmin andy.dunkel@ekiwi.de
    ServerName server.andydunkel.net
    ServerAlias server.andydunkel.net
    DocumentRoot /var/www/server.andydunkel.net
    ErrorLog ${APACHE_LOG_DIR}/server_andydunkel_error.log
    CustomLog ${APACHE_LOG_DIR}/server_andydunkel.log combined    
    <Directory "/var/www/server.andydunkel.net">
      AllowOverride All
    </Directory>
</VirtualHost>

Die Einstellungen hier sind für die unverschlüsselte Http-Verbindung. Für verschlüsselte SSL-Verbindungen empfiehlt sich anschließend die Nutzung von LetsEncrypt, welches automatisch eine Konfiguration auf Basis der unverschlüsselten erstellt.

<IfModule mod_ssl.c>
<VirtualHost *:443>
    ServerAdmin andy.dunkel@ekiwi.de
    ServerName server.andydunkel.net
    ServerAlias server.andydunkel.net
    DocumentRoot /var/www/server.andydunkel.net
    ErrorLog ${APACHE_LOG_DIR}/server_andydunkel_error.log
    CustomLog ${APACHE_LOG_DIR}/server_andydunkel.log combined

SSLCertificateFile /etc/letsencrypt/live/h2981482.stratoserver.net/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/h2981482.stratoserver.net/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
</IfModule>

Aktivierung der Konfiguration

Die Konfiguration muss anschließend noch aktiviert werden:

a2ensite server.andydunkel.net.conf

Anschließend starten wir den Server neu:

systemctl restart apache2

Besitzer zuordnen

Wollen wir WordPress oder andere dynamische Inhalte darin laufen lassen, welche Dateien verändern oder ablegen, sollten wir den Besitzer, des oben festlegten Verzeichnisses, auf den Webserver abändern.

chown www-data:www-data -R *

Kommentar hinterlassen

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