- (bissige?) Blogs eines Schweizers - http://blog.swissbite.net -
Howto: Apache2, VHost und Catch-All mit Redirect
Posted By Swissbite On 19. Januar 2011 @ 18:28 In Technik | No Comments
Vorwort: Ich fragte mich wie ich, wie ich ein Sammel-VHost mache (in der Regel www.domain.tld), und alle Sub-Domains welche nicht existieren mittels redirect auf den Sammelhost umleite. Nach diverser Literatur versuche ich das ganze konzentriert hier aufzuschreiben, um später selber nachschauen zu können
Die Anleitung ist für ein Unix/Linux System ausgelegt, sollte aber mit Pfadanpassungen theoretisch auch auf einem Windows System laufen.
Zuerst das benötigte minimale Vorwissen:
Diese Punkte werden hier nicht direkt behandelt, aber dafür ein paar wichtige Hintergrundinformationen genannt. Um das redirect anschliessend einschalten zu können, muss das Modul mod_rewrite geladen werden, was in der Regel schon gemacht ist.
Ein wenig Theorie zu VHost und VHost-Files. Apache2 lädt die VHost-Definitionen in der Reihenfolge der Dateinamen unter /etc/apache2/sites-enabled/. Sortiert wird zuerst nach Zahlen 0-9 und anschliessend nach Buchstaben. Standardmässig gibt es eine Datei 000-default, welche zuerst geladen wird.
Wenn Apache keinen VHost zu einer Domain findet, wird die erste VHost-Konfiguration genommen, welche Apache in der Reihenfolge der geladenen Dateien findet. Um sicherzustellen dass die Catch-All Subdomain wirklich zuerst ist, empfiehlt es sich die Datei /etc/apache2/sites-enabled/000-default1 [1] anzupassen, und den gewünschten VHost als aller erster VHost in der Datei einzurichten.
Bis jetzt würde eine fiktive Subdomain quer.domain.tld zwar den Inhalt von www.domain.tld zeigen, aber in der Adressliste würde nach wie vor quer.domain.tld darin stehen. Um dies zu ändern, geht es weiter mit Schritt 2.
Anschliessend die ReWrite Regeln innerhalb der Subdomain erstellen:
ServerName www.domain.tld
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.domain\.tld$ [NC]
RewriteRule ^(/.*)$ http://www.domain.tld$1 [R=301,L]Erklärung der Regel:
Wer das ganze genauer haben will, kann unter der offiziellen Dokumentation3 [3] nachschauen. Möglich sind so auch ein Redirect von einer http:// Seite zu einer https:// Seite.
Article printed from (bissige?) Blogs eines Schweizers: http://blog.swissbite.net
URL to article: http://blog.swissbite.net/2011/01/howto-apache2-vhost-und-catch-all-mit-redirect/
URLs in this post:
[1] 1: #fn-608-1
[2] 2: #fn-608-2
[3] 3: #fn-608-3
[4] ↩: #fnref-608-1
[5] ↩: #fnref-608-2
[6] ↩: #fnref-608-3
Click here to print.
Copyright © 2010 (bissige?) Blogs eines Schweizers. All rights reserved.