Zurück zu den Tools

Apache-VirtualHost-Generator

Gib eine Domain ein, wähle statische Dateien oder einen Reverse-Proxy und erhalte einen vollständigen <VirtualHost>-Block — SSL, Logging, Verzeichnisberechtigungen und Upload-Limits inklusive. Hier wird nichts hochgeladen oder ausgeführt; kopiere das Ergebnis selbst nach /etc/apache2/sites-available/.

Grundlagen

Domain & Datei

ServerName ist das, womit Apache den Host-Header einer Anfrage abgleicht; alles Weitere ergibt sich daraus.

durch Leerzeichen getrennt

Inhalt

Was dieser Vhost ausliefert

Dateien unter diesem Pfad werden direkt ausgeliefert. Berechtigungen und <Directory>-Einstellungen findest du weiter unten.

SSL

HTTPS-Virtual-Host

nur für ältere Zertifikatsbündel

Noch kein Zertifikat? Erzeuge die OpenSSL-/Certbot-Befehle mit dem SSL-Zertifikats-Generator dieses Tool referenziert nur die resultierenden Dateipfade.

Logging & Zugriff

Logs und Verzeichnisberechtigungen

Directory Optionsnur im Modus „Statische Website“ — ein Reverse-Proxy hat kein lokales Verzeichnis zum Ausliefern

Uploads

Größe des Request-Bodys

Apaches eigenes Gegenstück zu nginx' client_max_body_size. Nur nötig, wenn dieser Vhost Uploads entgegennimmt.

Validierung

Häufige Fehler, live geprüft

Ports kollidieren nicht

HTTP- und HTTPS-Block nutzen unterschiedliche Ports.

Name der Config-Datei endet auf .conf

a2ensite erkennt die Datei.

Jeder VirtualHost-Block ist geschlossen

Ein fehlendes </VirtualHost> ist ein Fehler beim manuellen Bearbeiten, keiner, den diese Ausgabe erzeugen kann.

Ausgabe

apache2-Vhost-Config

apache2-Vhost-Config

<VirtualHost *:80>
    ServerName app.wespner.eu
    ServerAlias www.app.wespner.eu

    # Redirect every request to HTTPS, preserving path and query string
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [END,NE,R=permanent]

    ErrorLog "/var/log/apache2/app.wespner.eu-error.log"
    CustomLog "/var/log/apache2/app.wespner.eu-access.log" combined
</VirtualHost>

<VirtualHost *:443>
    ServerName app.wespner.eu
    ServerAlias www.app.wespner.eu

    SSLEngine on
    SSLCertificateFile "/etc/letsencrypt/live/app.wespner.eu/fullchain.pem"
    SSLCertificateKeyFile "/etc/letsencrypt/live/app.wespner.eu/privkey.pem"

    DocumentRoot "/var/www/app.wespner.eu/public"

    <Directory "/var/www/app.wespner.eu/public">
        Options -Indexes FollowSymLinks -MultiViews
        AllowOverride None
        Require all granted
    </Directory>

    ErrorLog "/var/log/apache2/app.wespner.eu-error.log"
    CustomLog "/var/log/apache2/app.wespner.eu-access.log" combined
</VirtualHost>

ausrollen

# 1. Save the config above as:
sudo nano /etc/apache2/sites-available/app.wespner.eu.conf

# 2. Enable the modules this vhost needs
sudo a2enmod ssl rewrite

# 3. Enable the site
sudo a2ensite app.wespner.eu.conf

# 4. Test the config, then reload Apache
sudo apachectl configtest && sudo systemctl reload apache2

Betreibst du einen eigenen Gameserver?

Wespner-Gameserver mit DDoS-Schutz, NVMe-Laufwerken und Aktivierung innerhalb von Minuten.

Hosting ansehen