Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

PHP Redirect per Header

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
tuennes
PostRank 5
PostRank 5
Beiträge: 266
Registriert: 09.08.2009, 13:03
Wohnort: Köln

Beitrag von tuennes » 22.11.2009, 18:27

Hallo zusammen,
ich hab da mal eine ganz konkrete Frage zu PHP:

Wenn ich per

Code: Alles auswählen

header("Location: http://www.xyz.de/blabla.html"); 
einen Redirect über den HTTP-Header an den Browser schicke, hab ich dann noch einen Einfluss auf den gesendeten Fehlercode (301, 302,..)? Oder wird da automatisch ein Fehlercode mitgesendet, den man nicht mehr "manuell" ändern kann?

Anzeige von ABAKUS

von Anzeige von ABAKUS »

SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


xoni
PostRank 8
PostRank 8
Beiträge: 692
Registriert: 22.08.2007, 12:14

Beitrag von xoni » 22.11.2009, 18:44

das kannst Du so machen...

Code: Alles auswählen

header ('HTTP/1.1 301 Moved Permanently');
header ('Location: '.$location);

tuennes
PostRank 5
PostRank 5
Beiträge: 266
Registriert: 09.08.2009, 13:03
Wohnort: Köln

Beitrag von tuennes » 22.11.2009, 19:43

Leider hatte ich exakt das schon ausprobiert. Gibt immer einen "Internal Server Error". Schade... :(

typer
PostRank 4
PostRank 4
Beiträge: 119
Registriert: 05.11.2007, 00:20

Beitrag von typer » 22.11.2009, 20:01

Pack die $location mit in die Anführungszeichen - dann klappt's auch :wink:

Synonym
PostRank 10
PostRank 10
Beiträge: 3708
Registriert: 09.08.2008, 02:55

Beitrag von Synonym » 22.11.2009, 20:08

Pack die $location mit in die Anführungszeichen - dann klappt's auch

Code: Alles auswählen

header ('Location: '.$location);
ist 100% korrekt

Mork vom Ork
PostRank 9
PostRank 9
Beiträge: 2557
Registriert: 08.07.2008, 11:07
Wohnort: Aufm Friedhof.

Beitrag von Mork vom Ork » 22.11.2009, 20:18

tuennes hat geschrieben:Leider hatte ich exakt das schon ausprobiert. Gibt immer einen "Internal Server Error". Schade... :(
Der Grund dafür steht, wie immer, im Fehlerprotokoll des Servers. Schau da rein.
typer hat geschrieben:Pack die $location mit in die Anführungszeichen
Nein. PHP ist zwar merkwürdig, aber so merkwürdig, dass Variablen in Anführungszeichen müssten, ist PHP dann doch nicht. Ganz im Gegenteil, damit handelt man sich eher Ärger ein.

tuennes
PostRank 5
PostRank 5
Beiträge: 266
Registriert: 09.08.2009, 13:03
Wohnort: Köln

Beitrag von tuennes » 22.11.2009, 20:19

Das mit der Variable in den Hochkommas funktioniert nicht, weil dann die Variable nicht ausgewertet wird. - Aber das ist auch nicht das Problem. Die Zeile mit dem 301 funktioniert bei mir nicht. Vielleicht liegt es ja an Einstellungen des Servers. (Auf die ich wegen Shared Hosting keinen Einfluss habe...)

typer
PostRank 4
PostRank 4
Beiträge: 119
Registriert: 05.11.2007, 00:20

Beitrag von typer » 22.11.2009, 20:25

Synonym hat geschrieben:ist 100% korrekt
...und wirft einen Fehler aus...

Ich mache es so header ("Location: https://www.xyz.de/"); und bekomme einen suchmaschinenfreudlichen redirect = https://www.webconfs.com/redirect-check.php

Mehr brauche ich nicht.

Anonymous

Beitrag von Anonymous » 22.11.2009, 20:52

typer hat geschrieben:
Synonym hat geschrieben:ist 100% korrekt
...und wirft einen Fehler aus...

Ich mache es so header ("Location: https://www.xyz.de/"); und bekomme einen suchmaschinenfreudlichen redirect = https://www.webconfs.com/redirect-check.php

Mehr brauche ich nicht.
vergiss das Tool ganz schnell.... das teilt dir nur mit ob die Suchmaschine dem redirect folgen kann oder nicht.... also wird auch ein 302, mit dem Google ja bekanntlich Probleme hat, als suchmaschinenfreundlich bezeichnet....

typer
PostRank 4
PostRank 4
Beiträge: 119
Registriert: 05.11.2007, 00:20

Beitrag von typer » 22.11.2009, 21:37

Verstehe die Diskussion wohl nicht wirklich - und drücke mich vielleicht auch schludrig aus (natürlich gehören Variablen nicht in Anführungszeichen).

Diese beiden Zeilen

header("HTTP/1.1 301 Moved Permanently");
header("Location: https://www.xyz.tld");

erzeugen einen sauberen 301er, dafür braucht doch niemand ein Tool :-?
Falls die Frage eine andere war (geänderte Postings), bitte ich um Entschuldigung.
Gruß typer

tuennes
PostRank 5
PostRank 5
Beiträge: 266
Registriert: 09.08.2009, 13:03
Wohnort: Köln

Beitrag von tuennes » 22.11.2009, 21:50

@typer: Wie ich oben schon schrieb, funktioniert die obere PHP-Zeile auf meinem Server nicht. Das hab ich schon vor meiner Anfrage hier im Forum ausprobiert. (Und ich hab jetzt gerade nochmal gekuckt, ob ich nicht vielleicht doch ein Semikolon vergessen... ;-) )

Anonymous

Beitrag von Anonymous » 22.11.2009, 21:53

typer hat geschrieben:erzeugen einen sauberen 301er, dafür braucht doch niemand ein Tool :-?
na, du hast doch selber ein Tool verlinkt um prüfen zu können ob der redirect suchmaschinenfreundlich ist.... und ich habe lediglich auf die Mängel dieses Tools hingewiesen und das es so im grunde untauglich ist...

tuennes
PostRank 5
PostRank 5
Beiträge: 266
Registriert: 09.08.2009, 13:03
Wohnort: Köln

Beitrag von tuennes » 22.11.2009, 21:59

Dieses "Tool" wäre ja noch brauchbar, wenn die wenigstens den HTTP Status Code mitausgeben würden. So kann man nur rätseln, was für die ein "Search Engine Friendly Redirect" ist.

xoni
PostRank 8
PostRank 8
Beiträge: 692
Registriert: 22.08.2007, 12:14

Beitrag von xoni » 22.11.2009, 22:08

(Und ich hab jetzt gerade nochmal gekuckt, ob ich nicht vielleicht doch ein Semikolon vergessen...
... und, lag es daran?

tuennes
PostRank 5
PostRank 5
Beiträge: 266
Registriert: 09.08.2009, 13:03
Wohnort: Köln

Beitrag von tuennes » 22.11.2009, 22:13

@wollbay: Nein. :)

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag