PowerDNS-Weiterleitung
Diese Anleitung beschreibt die Konfiguration von URL-Weiterleitungen für PowerDNS-Server. Diese Funktionalität ist optional.
Benötigte Software
Wir benötigen einen installierten PowerDNS-Server auf Basis einer MySQL-Datenbank.
Des Weiteren wird ein Webserver benötigt, der unter einer festen IP-Adresse für jeden Hostnamen das gleiche Verzeichnis ausliefert. Dieser Webserver muss PHP beherrschen, des Weiteren muss von diesem Webserver aus der Zugriff auf die PowerDNS-Datenbank möglich sein. Es spricht nichts dagegen, dass direkt einer der PowerDNS-Nameserver als Webserver verwendet wird.
Einrichtung
Die PowerDNS-Datenbank muss angepasst werden. Dies muss nur in der Datenbank geschehen, die von sourceDESK verwendet wird. Es müssen folgende Kommandos ausgeführt werden:
CREATE TABLE `redirects` ( `hostname` VARCHAR(255) NOT NULL, `type` enum('REDIRECT','FRAME') NOT NULL DEFAULT 'REDIRECT', `target` VARCHAR(255) NOT NULL ); ALTER TABLE `redirects` ADD PRIMARY KEY `hostname` (`hostname`);
Nun muss auf dem Webserver eine Datei namens index.php im Hauptverzeichnis für den Webserver erstellt werden. Diese hat folgenden Inhalt:
<?php $db = new MySQLi("HOSTNAME", "USERNAME", "PASSWORD", "DATABASE"); if($db->connect_errno) die("Technical error."); $sql = $db->query("SELECT * FROM redirects WHERE hostname LIKE '" . $db->real_escape_string($_SERVER['HTTP_HOST']) . "'"); if($sql->num_rows != 1) die("Hostname unknown."); $info = $sql->fetch_object(); if(substr($info->target, 0, 4) != "http") $info->target = "http://" . $info->target; if($info->type == "REDIRECT"){ header('Location: ' . $info->target); exit; } ?> <iframe src="<?=$info->target; ?>" style="position:fixed; top:0px; left:0px; bottom:0px; right:0px; width:100%; height:100%; border:none; margin:0; padding:0; overflow:hidden; z-index:999999;">Your browser doesn't support iframes</iframe>
Hier müssen noch die Datenbank-Zugangsdaten (HOSTNAME, USERNAME, PASSWORD, DATABASE) durch die Zugangsdaten der durch sourceDESK verwendeten PowerDNS-Datenbank ersetzt werden.
Konfiguration
In sourceDESK muss in den Einstellungen für den PowerDNS-Treiber die IPv4-Adresse des Webservers hinterlegt werden. Optional kann hier auch zusätzlich eine IPv6-Adresse eingetragen werden.
Damit ist die Konfiguration abgeschlossen. In den DNS-Einstellungen erscheinen nun die neuen Typen URL und IFRAME.