/blog/perl


substr() in Perl
[154370 mal gelesen]
foreach in Perl
[129204 mal gelesen]
Arrays in Perl - Besonderheiten
[125503 mal gelesen]
split() in Perl - Zeichenketten teilen
[113720 mal gelesen]
open() - Dateien öffnen in Perl
[109042 mal gelesen]
grep - Listen durchsuchen in Perl
[94793 mal gelesen]
chomp() in Perl
[93669 mal gelesen]
push in Perl
[90893 mal gelesen]
sleep in Perl - Das aktuelle Script warten lassen
[76016 mal gelesen]
index() in Perl - Zeichenkette in Zeichenkette suchen
[59665 mal gelesen]


Arrays
Dateien
HTPC
Hashes
Leistungsoptimiert
PHP
Perl
RegEx
Schleifen
Script
Skalare
Sonstiges
System
Webserver
Zur Startseite


Dienstag, 1.7.2008, 10:35:35 Uhr

Permanent redirect 301 - Wie leite ich eine Seite um?



Ich stand kürzlich vor dem Problem, daß ich eine einzelne Seite "umziehen" mußte, die wohl ganz gut bei Google stand, die aber an dieser Stelle nicht mehr existieren sollte.

Also brauchte ich einen Befehl, um Google und natürlich auch den Besuchern mitzuteilen, daß diese Seite jetzt an einer anderen Stelle existiert.

Da die Seite zum Glück eine PHP-Seite war, war das Ganze kein großes Unterfangen: Mit folgenden Script gehts ganz easy:

<?php
// Permanent redirection
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.neue-adresse.com/blah");
exit();
?>



So, fertig.


Umleitung mit .htaccess
Ich hätte das auch in der .htaccess machen können, und zwar folgendermaßen:

Redirect permanent /alteseite/seite.html http://www.neue-adresse.com/dingens.html


aber für eine einzelne Seite an die .htaccess rangehen wollte ich dann auch nicht.

Die Möglichkeit des Browser-Reloades oder in Javascript schieden von vornherein aus, weil zum Einen nicht jeder Javascript aktiviert hat, bzw. beim Browser-Reload Google möglicherweise die Seite als neue Seite ansieht, und man will doch, daß sie im Google-Suchergebnis oben bleibt...

Die Variante in Perl
Natürlich kann auch Perl Seiten "umziehen" lassen. Dazu verwendet man am Besten das Modul CGI, was dann so aussehen könnte:

$q = new CGI;
print $q->redirect(" http://www.neue-adresse.com/ ");


Aber wie gesagt, die Seite war PHP, und warum sollte ich erst den Umweg über Perl gehen, auch wenn ich sonst PHP nicht mag...

In diesem Sinne

Bis demnächst




Kommentare zum Beitrag "Permanent redirect 301 - Wie leite ich eine Seite um?"

Kommentar von Testerin
Hübsch !
Nur funktioniert leider nichts von alle dem ! Schade !

Kommentar von Admin
Wie immer wurden die Tipps vorher getestet, und was soll ich sagen: Bei mir läuft's...

Kommentar von Renée Bäcker
@Testerin: *Was* hat nicht funktioniert? Wie hast Du es probiert? Gab es Fehlermeldungen?

Kommentar von User
Redirect permanent /alteseite/seite.html http://www.neue-adresse.com/dingens.html


alteseite....ist das die Domain oder was????

Kannst du das an dem konkreten Beispiel meiner Seite erklären?
Also, die alte URL lautet: www.beispielseite.de/index.php?id=39
die neue URL (selbe Domain) lautet:
www.beispielseite.de/pilze/fliegenpilze.hmtl


Danke!!!!!

Kommentar von Admin

Also in Deinem Falle wäre es ein:
Redirect permanent index.php http://www.beispielseite.de/ pilze/fliegenpilze.html

ABER
Das wird nicht so funktionieren, wie Du denkst, denn das ?id=39 gibt an, daß Deine Seiten aus einer Datenbank generiert werden.

Bei oben genannter Methode würde er für jeden Wert, der hinter id steht, die Fliegenpilze aufrufen.

Was Du wahrscheinlich suchst ist das Modul mod_rewrite. Einfach mal nach googeln, da findest Du ne menge guter Seiten.

Kommentar von User
Ja, nein, vielleicht...die /index.php?id=39 stammt von der alten Typo3-Installation und /pilze/fliegenpilze.html von der neuen Joomla-Installation.

Und da einige Verlinkungen rumschwirren, soll der Nutzer und Google und Co. auf die richtige Seite geleitet werden und nicht auf einer 404er oder in meinem Fall auf der Startseite ohne, dass z.B. Google bemerkt, dass diese Seite gar nicht mehr existiert und unter Umständen falsch indixiert oder wegen doubleContent die seite ganz rauschmeisst.

Kommentar von Jürgen Weber
Permanent redirect 301
recht einfach mit einer PHP-Datei

<?php
// Permanent redirection
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.neue-adresse.com/blah");
exit();
?>

Bleibt die Frage, wo ist diese Datei unter welchem Namen als redirect zu hosten?


Kommentar von Admin
Das


<?php
// Permanent redirection
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.neue-adresse.com/blah");
exit();
?>



kommt auf die alte Seite, die umgezogen werden soll, und zwar gleich an den Seitenanfang.

Kommentar von B. Mertinkat
Funktioniert super. Danke für diesen Lösungsvorschlag.

Habe übrigens den Code-Schnipsel in den Bereich
<body> --- </body> gesetzt und funktioniert dort auch.

Kommentar von master
Ja nur muss es dann halt eine php datei sein..^^ Die den <body> tag enthält.

Kommentar von Michel
Ich war auch gerade an einem Umzug einer Domain beteiligt und hatte als einziger ein bisschen Ahnung von der htaccess. Es war das Problem, das wie in den meisten Foren beschriebene => Redirect 301 / http://www.neuerDomainname.de nur für die Startseite funktioniert. Alle Unterseiten wurden nicht weitergeleitet. Jetzt kann man natürlich hergehn und tatsächlich jede einzelne url der alten Seite in der htaccess weiterleiten. Ich hab zufällig rausgefunden das wenn man ein / nach http://www.neuerDomainname.de setzt, also => http://www.neuerDomainname.de/ werden alle Unterseiten auch korrekt weitergeleitet.
Redirect 301 / http://www.neuerDomainname.de/
Voraussetzung dafür ist natürlich das sich NUR der Domainname ändern soll und sich nicht noch alle url Bezeinungen ändern. Also http://www.alterDomainname/itswitz.html muss zu http://www.neuerDomainname.de/itswitz.html werden können.
Ich hoffe mal das dies dem einen oder anderen mal schnell weiterhelfen wird.



Thema: Webserver Perl PHP

Der Beitrag "Permanent redirect 301 - Wie leite ich eine Seite um?" wurde 11247 mal gelesen.

Kommentar schreiben  Druckansicht  Seitenanfang 
Beurteilen 






 Zufällige Beiträge im /blog/perl

abs() in Perl

getc - Nächstes Zeichen aus Datei lesen

index() in Perl - Zeichenkette in Zeichenkette suchen

Reguläre Ausdrücke - Suche nach Zeichen am Wortanfang und am Wortende

Windows 7 XP Mode – Wo finde ich den XP-Modus unter Windows 7?

mkdir() - Ein Verzeichnis erstellen in Perl

Arrayeinträge zählen und sortiert nach Häufigkeit ausgeben

chr() in Perl - Zeichen anhand seines ASCII-Codes ermitteln und ausgeben

Continue in Perl - Erweiterte Schleifenausführung



0.0222339630126953 sec. to build



...Blogsoftware in pure Perl - Powered by a lot of Coffee...


SSD-Festplatte - Wassn das???
Die Transliteration - Nur ein Zeichen in einem Skalar ersetzen
Select - Case in Perl
Windows 7 XP Mode – Wo finde ich den XP-Modus unter Windows 7?
Mac-Adresse beim Apple Macintosh herausfinden
SGN-Funktion für Perl

Eigene IP herausfinden mit Perl
Epoche live in Datum umwandeln
Firefox 3 - Exe-Files downloaden


Gesamtverzeichnis
Februar 2010
Dezember 2009
Oktober 2009
Januar 2009
Dezember 2008
November 2008
September 2008
August 2008
Juli 2008
Juni 2008
Mai 2008
April 2008
Januar 2008
Dezember 2007
November 2007
Oktober 2007
September 2007
August 2007
Juni 2007
Mai 2007
April 2007
März 2007
Februar 2007
Januar 2007
Dezember 2006


Mister Wong

RSS-Feed

Heute ist der
27.12.2024

Es ist
0:44:53 Uhr

Ihre IP:
3.128.94.112

Blog-Einträge: 186

Die letzten 24 Stunden im Überblick


Gelesene Beiträge insgesamt:
4428520


Webseiten vergleichen
Kalender mit Feiertagen - 2028
Links finden und testen
Menschliche Datumsangaben
IP zu Domain herausfinden
Time live in Datum umwandeln
Perl für Windows



Impressum