Url forwarder

Hallo
da ich bei meinem domainhosting nur eine IP und keine domain weiterleitung eintragen kan können sich meine benutzer bei meiner seite nicht einloggen weil irgendwas an phpnuke mit dem cookies ist.

Also bräuchte ich ein skript das wenn ein user von www.test.de kommt es ihn auf www.test1.de schickt

geht denn so was wenn ja wie heißt denn so ein script ?

gruss
tom

problembeschreibung:
problem ist wenn die im explorer www.test1.de hinschreiben können sie sich einloggen wenn die www.test.de reinschreiben werden die zu www.test1.de weitergeleitet aber oben im explorer steht immer nocht www.test.de und deshalb können die sich nicht einloggen.

Hallo
da ich bei meinem domainhosting nur eine IP und keine domain
weiterleitung eintragen kan können sich meine benutzer bei
meiner seite nicht einloggen weil irgendwas an phpnuke mit dem
cookies ist.

Benutze phpnuke leider nicht, da kann ich Dir nicht helfen. Evtl. posten im PHP-Forum.

Also bräuchte ich ein skript das wenn ein user von www.test.de
kommt es ihn auf www.test1.de schickt

Du meinst, wenn ein User auf www.test.de ist (also das in seiner Adressleiste stehen hat), soll er nach www.test1.de umgeleitet werden (nach Deiner Problembeschreibung) - das ist ein Unterschied. Im einen Fall geht es um den Referrer (woher kommt der User), im anderen um die aktuelle URL (wo ist der User).

geht denn so was wenn ja wie heißt denn so ein script ?

das geht allerdings.

Javscript (im Head-Bereich)

//var icamefrom = document.referrer;
//alert("Du kommst von "+icamefrom);
var testdomain = "test.de"; //"www.test.de"
var forward = "test1.de"; //"www.test1.de"
var whereami = window.location.href;
if (whereami.indexOf(testdomain) \> -1) {
 whereshouldibe = whereami.replace(testdomain, forward);
 window.location.href = whereshouldibe;
}

oder mit PHP (muss ganz am Anfang stehen, vor jeder Ausgabe zum Browser - wegen header):

<?php //Referrer ermitteln: $icamefrom = getenv("HTTP_REFERER");<br /> $testdomain = "test.de"; //"www.test.de"
 $forward = "test1.de"; //"www.test1.de"
 $whereami = $\_SERVER["REQUEST\_URI"];
 if (strpos($whereami, $testdomain) !== FALSE) {
 $whereshouldibe = str\_replace($testdomain, $forward, $whereami);
 header("Location: $whereshouldibe");
 } 
?\>

Die Variablennamen sind nicht die besten, aber es ist schon spät :smile:
Beachte, dass es auch sein kann, dass http://test.de (also ohne www) zu Deiner Seite führen kann (zumindest habe ich ein paar Domains bei denen das geht). Weiters kann es sein, dass durch das automatische Einsetzen des Browsers die Adresse in der Adressleiste nicht http://[www.]test.de ist, sondern z.B. http://[www.]test.de/bla.php oder sonstwas. Die Skripts oberhalb überprüfen, ob ‚test.de‘ in der Adresse enthalten ist, ersetzen es in diesem Falle durch ‚test1.de‘ und leiten an die entsprechende Adresse weiter. z.B. wird http://test.de/foo.html zu http://test1.de/foo.html. Das sollte in jedem Falle greifen. Wenn deine Domain ohne www. nicht erreichbar ist, dann einfach ‚www.‘ an den Variablen ‚testdomain‘ und ‚forward‘ vorne dranhängen, wie in den Kommentaren ersichtlich.

Gruß,
Rudy