Seite 1 von 1

Suche: Redirect-Funktion (php; mit dateinamen!)

Verfasst: 10.03.2004 16:55
von Wuppi
Hi

sowas hatte ich schonmal .... also wir umgezogen sind .. im Forum gabs viele links auf Beitrag alla http://subdomain.domain.de/viewtopic.php?t=293 (auch von anderen Seiten, Foren aus)

Wir haben ne eigene Domain bekommen => www.domain.de - die Subdomain funzte aber noch => dort hab ich u.a. viewtopic.php, viewforum.php erstellt - als inhalt war so nen Umbenennung der Domain - aus subdomain.domain.de sollte www.domain.de gemacht werden. Hat auch geklappt - nur das script find ich natürlich net mehr ;)

Jetzt ziehen wir wieder um und es haben sich schon ein haufen Links angesammelt ;) Will das ganze also wieder so machen (die andere Domain behalten wir; darf aber nur noch nen redirect sein)

header("Location: http://www.domain.de/"); <- so würde ich direkt umleiten - aber viewtopic.php?xxx würde nicht mitgenommen ... wie ging das nochmal? ;)

Bis denne
Wuppi

Verfasst: 11.03.2004 16:10
von Mister_X

Code: Alles auswählen

<?php
header("Location: http://www.domain.de".$_SERVER["REQUEST_URI"]);
?>
? sowas ?

Verfasst: 11.03.2004 17:36
von Wuppi
Hi

grundsätzlich schon ... aber der mist klappt net :(

Hab den Short-URLs-Mod drauf - das hat zur folge das ich halt auch Links in form von domain.de/forum15.html habe .... DAS klappt nicht

Ich hab in dem verzeichnis die gleiche .htaccess wie im Forenverzeichnis ... wenn ich /forums.html aufrufe, klappt das auch problemlos - nur z.b. forum15.html nicht - hier bekomm ich nen 404 ... mod_rewrite sollte doch dafür sorgen das dieser Aufruf umgewandelt wird - in viewforum.php?x=y

Wenn ich direkt /viewforum.php?x=y aufrufe kommt auch nen 404er ... von der Domain die umleiten sollte - nicht von der Ziel-Domain.

Hab in der viewforum.php mittlerweile nur noch

Code: Alles auswählen

header("Location: http://www.domain.de".$_SERVER["REQUEST_URI"]); 
drin stehen.

Soweit ich weiß müsste ich so ne umleitung auch direkt per .htaccess machen können - hätte aber den Nachteil das ich so nen kleinen counter nicht nutzen kann - ich müsste wissen welche Domains abgestoßen werden könnten ... also welche seit x Wochen nicht aufgerufen wurde. Daher kommt diese Variante nicht in Frage ... nur via header und "request_uri"

Bis denne
Wuppi

Verfasst: 11.03.2004 17:43
von Wuppi
Argh ...

Nach 20-30mal abspeichern/hochladen - ohne was zu ändern "Frust-Upload" klappt der mist ;)

Jetzt zählt mein Counter aber nicht ;) Ich hab ewig nichts mehr mit if-Abfragen gemacht ... es muß zwischen 6 Domains unterschieden werden (und das in zwei schreibweisen: www.domain.de ist ja nicht gleich domain.de) ... da muß ich mich jetztnochmal reinlesen :( Oder auf die stelle nen guten tip? ;)

Bis denne
Wuppi

Verfasst: 11.03.2004 21:33
von Mister_X
Da müsste man jetzt genauer wissen wo es denn hängt, da if-Abfragen ja nun wirklich nicht schwer sind ;)
Als Variable für den aufgerufenen Domainnamen könnte man $_SERVER["HTTP_HOST"] nehmen....

Verfasst: 12.03.2004 17:23
von Wuppi
Hi

es läuft jetzt ;) sieht nur irgendwie nach "quick & dirty" aus. ...

Da ich die Domains (6) ja zählen möchte, muß ich sie unterscheiden:

Code: Alles auswählen

(kurzform)
if ($domain == "blabla.de" or $domain =="www.blabla.de") {
$Counter ++
#redirect
} 
else

if ($domain == "blie.de" or $domain =="www.blie.de") {
$Counter ++
#redirect
} 
else {
#redirect
}
Case ist mir nen begriff, aber wie ich in beispielen sehe, geht das nur mit zahlen ...

Kann man die verschachtelung etwas sauber machen? ;)

Bis denne
Wuppi

Verfasst: 13.03.2004 01:00
von Mister_X
sh. hier: http://www.phpbb.de/viewtopic.php?p=273846#273846
switch geht also sehr wohl auch mit Wörtern.

Verfasst: 13.03.2004 15:21
von Pyramide
Und mit verschiedenen Domains gehts so:

Code: Alles auswählen

switch($domain) {
  case 'domain.de':
  case 'www.domain.de':
    mach_was();
    break;

  case 'anderedomain.de':
  case 'www.anderedomain.de':
  case 'andere.domain.de':
    mach_was_anderes();
    break;
}

Verfasst: 13.03.2004 23:30
von Jensemann
Wuppi hat geschrieben: Case ist mir nen begriff, aber wie ich in beispielen sehe, geht das nur mit zahlen ...
in PHP gehts auch mit strings. In z.B. C gehts nur mit int

Verfasst: 27.05.2004 03:03
von DerOlum
danke mister x!

das klappt prima mit der weiterleitung!

gruß,
olum