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

... wiedermal 301-redirect

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
Neues Thema Antworten
eusebia
PostRank 2
PostRank 2
Beiträge: 60
Registriert: 19.01.2005, 22:54

Beitrag von eusebia » 06.12.2008, 23:44

Hallo,

ich will meine alte Domain umziehen. Die Links, die darauf zeigen, sollen der neuen zugeschrieben werden. Das ist vermutlich so korrekt, oder?

Redirect permanent / https://www.neuedomain.de/

Deeplinks gibt es kaum, aber es wäre nett, wenn auch die Einzelseiten direkt auf die neuen weitergeleitet werden:

Redirect permanent /hunde.htm https://www.neuedomain.de/hundehaltung.htm

Redirect permanent /katzen.htm https://www.neuedomain.de/katzenhaltung.htm


Soweit ich das verstehe, gibt das dann aber ein Schleife? Gibt es eine Möglichkeit, beides zu erreichen?

Danke für Eure Hilfe

Anzeige von ABAKUS

von Anzeige von ABAKUS »


Hochwertiger Linkaufbau bei ABAKUS:
  • Google-konformer Linkaufbau
  • nachhaltiges Ranking
  • Linkbuilding Angebote zu fairen Preisen
  • internationale Backlinks
Wir bieten Beratung und Umsetzung.
Jetzt anfragen: 0511 / 300325-0

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

Beitrag von Mork vom Ork » 07.12.2008, 11:13

eusebia hat geschrieben:ich will meine alte Domain umziehen. Die Links, die darauf zeigen, sollen der neuen zugeschrieben werden. Das ist vermutlich so korrekt, oder?

Redirect permanent / https://www.neuedomain.de/
Redirect leitet alles weiter, was mit dem gegebenen Verzeichnis beginnt. Wenn du also möchtest, dass alle alten Pfade auch unter der neuen Domain aufgerufen werden, also alt.example.com/bla -> neu.example.com/bla, alt.example.com/fasel/di/dumm -> neu.example.com/fasel/di/dumm usw., dann wäre diese eine Zeile richtig.
Deeplinks gibt es kaum, aber es wäre nett, wenn auch die Einzelseiten direkt auf die neuen weitergeleitet werden:

Redirect permanent /hunde.htm https://www.neuedomain.de/hundehaltung.htm
Aha. Du möchtest obiges also nicht. Dann wirst du auf RedirectMatch zurückgreifen müssen, um exakte Ausgangspfade definieren zu können:

RedirectMatch ^/$ https://example.com/
RedirectMatch ^/hunde\.htm$ https://example.com/hundehaltung.htm

( ^ besagt, dass der zu vergleichende Text dort seinen Anfang haben muss, $ macht das Gleiche fürs Textende; der Punkt ist in Mustern ein Platzhalter für ein beliebiges Zeichen, daher sollte ein Punkt als solcher, nicht als Platzhalter, mit einem Rückstrich maskiert werden, \. statt . )
Redirect permanent /katzen.htm https://www.neuedomain.de/katzenhaltung.htm

Soweit ich das verstehe, gibt das dann aber ein Schleife?
Wenn überhaupt, dann nur wegen Redirect / … und falls alte und neue Domain aus demselben Serverzeichnis bedient werden - letzteres solltest du aber bei geänderten Pfaden -wie bei dir wohl der Fall- tunlichst vermeiden, denn sonst sammelst du zukünftig haufenweise Fehler der alten Domain und kannst sie nicht von Fehlern der neuen Domain unterscheiden. Davon abgesehen wird die Weiterleitung des Wurzelverzeichnisses / mit Redirect/RedirectMatch nicht funktionieren, da beide Direktiven die angefragte Domain nicht kennen; für sowas benötigst du mod_rewrite.
Aber wie gesagt: Eigenes Verzeichnis ist sauberer.

eusebia
PostRank 2
PostRank 2
Beiträge: 60
Registriert: 19.01.2005, 22:54

Beitrag von eusebia » 07.12.2008, 15:13

Danke für die ausführliche Antwort! Mit RedirectMatch werde ich mich jetzt befassen.

Bei Domains liegen am gleichen Server. Ich dachte, dass ich das so löse:

Die neue Domain lege ich auf die Route, die alten Domain weist auf ein Verzeichnis /alt. Wenn ich die .htaccess in den Ordner /alt lege, müsste das doch gehen?



Den zweiten "Umweg", den ich mir ausgedacht hatte, ist zuerst mit
Redirect permanent / https://www.neuedomain.de/ auf die neue Domain zu verweisen.

Die neue Domain hat dann eine eigene htacess, mit der nun alle Seiten umgeleitet werden, die auf der neuen nicht analog zu alten existieren. D.h. das wären 2 Weiterleitungen hintereinander ...

Weiterleitung bei der alten Domain
Redirect permanent / https://www.neuedomain.de/

Bei der neuen Domain
Redirect permanent /hunde.htm https://www.neuedomain.de/hundehaltung.htm

Oder wäre diese Idee nicht so gut?

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.


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

Beitrag von Mork vom Ork » 07.12.2008, 17:02

eusebia hat geschrieben:Die neue Domain lege ich auf die Route
Route? Route ist ein Weg, du meinst das Wurzelverzeichnis, Root ;)
die alten Domain weist auf ein Verzeichnis /alt. Wenn ich die .htaccess in den Ordner /alt lege, müsste das doch gehen?
Noch schöner wäre es, wenn du ne.u auf /neu/ und al.t auf /alt/ legen könntest, aber es ist schon richtig, das müsste funktionieren, wie du es dir gedacht hast - wobei mir jetzt gerade dunkel einfällt, dass der Apache sämtliche .htaccess bis hinauf ins Wurzelverzeichnis (Root ;) des Dateisystems (!) einsammelt. Für Zugriffe auf al.t würde er demnach /alt/.htaccess und /.htaccess einlesen; es bestünde die Gefahr, dass die beiden sich in die Quere kommen. Insofern: Falls du die Möglichkeit hast, lege für beide Domains eigene, voneinander unabhängige Verzeichnisse an.
Den zweiten "Umweg", den ich mir ausgedacht hatte, ist zuerst mit
Redirect permanent / https://www.neuedomain.de/ auf die neue Domain zu verweisen.

Die neue Domain hat dann eine eigene htacess, mit der nun alle Seiten umgeleitet werden, die auf der neuen nicht analog zu alten existieren. D.h. das wären 2 Weiterleitungen hintereinander ...
[…]
Oder wäre diese Idee nicht so gut?
Nein, das wäre nicht so gut, auch wenn's funktionieren würde. Den einen Nachteil, die zwei Weiterleitungen, hast du ja schon genannt, der andere wäre, dass du den Adressraum der alten und der neuen Domain vermischt.
Stell' dir vor, al.t/hunde liegt jetzt unter ne.u/hundehaltung und du richtest die entsprechende Zwischenweiterleitung ne.u/hunde nach ne.u/hundehaltung ein. In drei Monat kommst du auf die Idee, etwas Allgemeines über Hunde zu schreiben. Ideal wäre /hunde - dummerweise ist der Pfad durch die alte Domain blockiert.
Das Beispiel ist zugegebenermaßen etwas an den Haaren herbeigezogen, aber ich denke, man sieht, worauf ich hinaus will.

eusebia
PostRank 2
PostRank 2
Beiträge: 60
Registriert: 19.01.2005, 22:54

Beitrag von eusebia » 07.12.2008, 17:43

Vielen herzlichen Dank !! Das hat mir sehr geholfen und war auch für Anfänger verständlich ... Ich werde versuchen, das mit RedirectMatch zu lösen.
In zwei getrennte Ordner /ALT und /NEU habe ich das sofort gelegt. Die htacess-Datei vom Root-Verzeichnis hatte natürlich auch den ehemaligen Unterordner /ALT beeinflusst, d.h. es wurde auch das falsche ErrorDocument 404 angezeigt

eusebia
PostRank 2
PostRank 2
Beiträge: 60
Registriert: 19.01.2005, 22:54

Beitrag von eusebia » 07.12.2008, 18:48

Hi (... hoffentlich habe ich noch eine Frage frei ...)

ich habe nun zur RedirectMatch gelesen:

RedirectMatch permanent ^/hunde/ https://www.domain.de/neu.html

Zitat "Ausgehend vom Hauptverzeichnis werden alle Anforderungen an das Unterverzeichnis zur neuen URL https://www.domain.de/neu.html umgelenkt"


Das bedeutet, dass auch hier ALLE Dateien zu example.com umgeleitet werden?
RedirectMatch permanent ^/$ https://example.com/

Für meine Speziallösung hätte ich gerne gehabt, dass (zusätzlich) auch alle Einzelseiten einzeln zur richtigen Stelle weitergeleitet werden. Habe ich da etwas falsch verstanden?

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

Beitrag von Mork vom Ork » 07.12.2008, 21:00

eusebia hat geschrieben:RedirectMatch permanent ^/hunde/ https://www.domain.de/neu.html

Zitat "Ausgehend vom Hauptverzeichnis werden alle Anforderungen an das Unterverzeichnis zur neuen URL https://www.domain.de/neu.html umgelenkt"
Richtig, aber beachte das Muster: ^/hunde/ . Dieses Muster hat zwar einen festen Anfang (durch ^ als erstes Zeichen), ist aber am Ende offen (da kein $ als letztes Zeichen). ^/hunde/ passt also auf alles, was mit /hunde/ anfängt: sowohl /hunde/ selbst als auch /hunde/dackel oder /hunde/bernhardiner/wuschelig_mit_fass_um_den_hals, jedoch nicht /hunde, in diesem Fall fehlt der zweite Schrägstrich.
Das bedeutet, dass auch hier ALLE Dateien zu example.com umgeleitet werden?
RedirectMatch permanent ^/$ https://example.com/
Nein, denn dieses Muster hat im Gegensatz zu obigem ein festes Ende; ^/$ bedeutet Textanfang, gefolgt von einem Schrägstrich, gefolgt vom Textende. Dieses Muster passt daher nur auf /, weder auf /hunde, da nach dem Schrägstrich nicht das Textende folgt, sondern hunde, noch auf katzen/, da hier vor dem Schrägstrich nicht der Textanfang steht, sondern katzen. Und das katzen/hunde sowieso nicht geht, wissen ja selbst Kinder ;)

Der Apache benutzt für die Anwendung von Mustern, sowohl in mod_alias/RedirectMatch als auch in mod_rewrite, die PCRE-Bibliothek. Diese Bibliothek wird auch in vielen anderen Programmen verwendet, unter anderem in PHP; eine ordentliche Beschreibung, wenn auch auf Englisch, findet sich in der PHP-Anleitung.
Du solltest unbedingt einen Blick reinwerfen, diese Muster sind in gewisser Hinsicht eine kleine Programmiersprache zur Texterkennung, sie sind mächtig, in vielen Situationen hilfreich und man stolpert immer wieder über sie.

eusebia
PostRank 2
PostRank 2
Beiträge: 60
Registriert: 19.01.2005, 22:54

Beitrag von eusebia » 07.12.2008, 21:27

Danke für deine geduldigen Antworten !! Ich sehe schon, das ich dazu mehr wie einen Sonntag brauche, um das zu lernen, aber jetzt verstehe ich zumindest das Grundprinzip

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag