Aug 17

Montag

In einem meiner vorherigen Posts habe ich beschrieben, wie man recht einfach eine Weiterleitung über den Apache-Webserver einrichtet.

In der Praxis nutze ich diesen Apache-Redirect, um meine neue Domain marklenhardt.de auf mein Yiid-Profil weiter zu leiten. Das funktioniert soweit ohne Probleme und ohne nennenswerte Verzögerung.

Nun ist mir noch aufgefallen, dass ich sogar meine Domain als login für OpenID verwenden kann. D.h. ich logge mich ganz einfach mit marklenhardt.de ein und es wird ordnungsgemäß abgefragt, ob ich bereits bei yiid.com eingeloggt bin.

Für mich persönlich ist das ein weiteres Indiz dafür, dass OpenID einfach eine tolle Sache ist. Vorallem auch, weil es für den Anwender transparent ist und er es unkompliziert anwenden kann.

Wer noch mehr über OpenID erfahren möchte, sollte sich den Wiki-Artikel anschauen, oder die offizielle Webseite der OpenID Foundation.

Falls jemand noch auf der Suche einem guten kostenlosen OpenID-Provider ist, der noch viel mehr Möglichkeiten bietet als nur OpenID-Sign-In, sollte derjenige unbedingt noch bei yiid.com vorbeischauen.

Aug 12

Mittwoch

Apache redirect auf externe URL

geschrieben von Lenny um 11:37 Uhr.

Aus gegebenem Anlass gibt es heute mal etwas technisches.

Ich hatte vor mir eine neue Domain zu registrieren und diese dann auf eine externe URL weiterleiten zu lassen.

Nachdem ich die Domain registriert hatte, habe ich mir überlegt, wie ich das am geschicktesten bewerkstelligen könnte. Dabei sind mir zwei recht einfache Wege eingefallen, die ich im Verlauf kurz erläutern möchte.

Zuerst noch ein Tipp zur Registrierung der Domain:

Viele Domain-Robots erlauben eine Registrierung von neuen Domains erst, wenn auf dem Namensserver (NS) bereits eine entsprechende Zone für die Domain angelegt wurde. Wichtig ist hierbei z.B. ein valider SOA-Eintrag (Start of Authority).

Nach dem Einrichten der Zone und Freischaltung der Domain durch die DENIC, sind mir also zwei Möglichkeiten eingefallen eine Weiterleitung einzurichten.

1. “Weiterleitung” über CNAME-Eintrag

Bei dieser Variante erfolgt ein einfacher Eintrag im Nameserver.

Mit Hilfe von CNAME-Einträgen, kann man Aliase für bestehende Domain-Namen anlegen.

Bsp.: neue-domain.net zeigt auf subdomain.example.org

Es gibt jedoch auch eine Einschränkung dieser Möglichkeit, denn es lässt sich nicht auf Unterordner weiterleiten.

subdomain.example.org/folder

wäre also nicht möglich als Weiterleitung.

Daher habe ich mich für die zweite Variante entschieden.

Die Lösung ist auch nicht ganz einwandfrei, da manche Domain-Besitzer es nicht gerne sehen, wenn man ohne Nachfrage einen Alias auf deren Domain anlegt. Zumindest sollte man also im Vorfeld abklären, ob diese Vorgehensweise mit dem Inhaber der Fremddomain, klar geht.

2. Weiterleitung über Apache redirect

Für diese Option muss im Nameserver zuerst ein A-Record existieren, der auf die IP-Adresse des Webservers zeigt.

neue-domain.net zeigt auf 127.0.0.1

Natürlich muss die valide externe IP-Adresse des Webservers verwendet werden.

Da ich für meinen Webserver nur eine IP-Adresse habe, aber trotzdem mehrere Domains schalten möchte, muss ich dafür vhost-Einträge im Apache verwenden.

Dieser Eintrag muss in /etc/apache2/ erfolgen, dort gibt es in neueren Linux-Derivaten zwei Ordner “sites-available” und “sites-enabled”.

Zur besseren Übersicht erstellt man am besten für jede Domain eine eigene Datei in “sites-available” und macht diese über einen Symlink in “sites-enabled” verfügbar.

Diese Datei könnte für einen Redirekt wie folgt aussehen:

<VirtualHost *:80>
ServerName neue-domain.net
ServerAlias neue-domain.net *.neue-domain.net
Redirect / http://subdomain.example.org/folder
</VirtualHost>

Alle Anfragen, die auf Port 80 mit der Domain neue-domain.net oder deren Subdomains ankommen werden entsprechend weitergeleitet.

Alternativ kann man auch die Direktive “RedirectMatch” verwenden.

RedirectMatch (.*) http://subdomain.example.org$1

Zur Nutzung der Redirects unter Apache2 muss mod_alias aktiviert sein.

Ich hoffe, ich konnte dem ein oder anderen mit dieser kurzen Anleitung etwas Hilfestellung geben. Für Fragen oder Ergänzungen steht wie immer die Kommentarfunktion zur Verfügung ;-)