htaccess redirect 301 funzt nicht

Gustav007

Enthusiast
Thread Starter
Mitglied seit
24.12.2010
Beiträge
1.582
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
mir fallen schon sämtliche Haare aus ^^
Die Apache Dokumentation lesen würde helfen.

Doch aus irgendeinem Grund übernimmt die htaccess das nicht.
Und AllowOverride ist an, so dass Apache die .htaccess liest?

Damit machst du zwar die Rewrite Engine an (mod_rewrite), die scheinst du dann aber nicht zu verwenden.

Redirect kommt von mod_alias und hat nichts mit der Rewrite Engine zu tun. Und das zweite Argument darf keine absolute URL sein, sondern nur ein URL Pfad. So muss das:
Code:
Redirect permanent "/alteSeite.html" "/neueSeite.html"
oder das hier geht auch:
Code:
Redirect permanent "/alteSeite.html" "http://www.neuedomain/neueSeite.html"
 
Du bist super! Das klappt wie von Dir versprochen :)

THNX THNX THNX !! :hail::hail::hail:

- - - Updated - - -

Eine Frage habe ich noch... gibt es ein Limit an Weiterleitungen oder kann man auf diese Weise unendlich viele Seiten umleiten?
 
gibt es ein Limit an Weiterleitungen oder kann man auf diese Weise unendlich viele Seiten umleiten?
Theoretisch gibt es kein Limit, praktisch sicherlich schon, aber so viele Weiterleitungen kannst du vermutlich gar nicht eintippen. Aber wenn die Weiterleitungen ein ähnliches Schema haben, nimmst du wirklich besser die Rewrite Engine und schreibst Regeln mit RewriteRule. Dazu sollte man allerdings sattelfest mit regulären Ausdrücken sein.
 
Ok werde mich hier einlesen. Folgende Herausvorderung habe ich jetzt noch. Google findet folgenden Pfad nicht: "http://www.meinedomain.de/Seite/" Nun muss ich zur 301 weiterleitung eine Datei angeben (html) wenn ich die Weilerleitung mit der Endung .html statt dem "/" funktioniert die Weiterleitung nicht, da die htaccess ja auf den Abruf der html wartet. Da "http://www.meinedomain.de/Seite/" nicht gefunden wird habe ich noch immer das 404 Problem.

Wenn ich in der htaccess keine html angebe funktioniert auch die 301 nicht.

Hast du eine Idee was ich hier machen kann?

PS: Schon wieder Haare verloren :wall:
 
Habe ich jetzt nicht ganz verstanden. Wie genau sieht die alte URL aus und wie soll die neue aussehen? Falls du von "http://www.meinedomain.de/Seite/" auf "http://www.meinedomain.de/NeueSeite.html" weiterleiten willst, dann sieht das so aus:
Code:
Redirect permanent "/Seite/" "/NeueSeite.html"
 
Vorhandener Code:
Redirect permanent "/alteKategorie/alteProduktseite/" "/Neuekategorie/Produktseite.html"

Das funktioniert jedoch nicht und ich finde keinen Lösungsansatz. Ich denke mir, dass es daran liegt das "/alteKategorie/alteProduktseite/" keine .html endung hat o_O

Update:

Mit den Seiten die ich als ".html" angebe, funktioniert die Weiterleitung problemlos.
 
Zuletzt bearbeitet:
Mach mal den Schrägstrich am Ende weg:
Code:
Redirect permanent "/alteKategorie/alteProduktseite" "/Neuekategorie/Produktseite.html"
 
Das klappt :)

allerdings hat google die Seite http://www.domain.de/altekategorie/alteproduktseite/ indexiert -.- Wenn ich in der htaccess das "/" weglasse und in der Adressleiste das "/" demnach auch weg lasse geht`s.

Aber dieses "/" am ende der indexierten Seite macht mich fertig. Das funktioniert mit der htaccess irgendwie nicht -.-

Zum Mäuse melken :(
 
Ja, hmm, da kann ich jetzt auch nur raten. Vermutlich gibt es in einer übergeordneten Apache Konfigurationsdatei eine Anweisung, die dein Redirect überschreibt. Da müsste man die komplette Konfiguration genau kennen.
 
gibt es denn eine Anweisung/Befehl die/den man manuell in die htaccess Datei, z.B. vor dem Redirect platziert und den Link so umbenennt bzw. anpasst für den redirect?
 
Nicht dass ich wüsste; Redirect wird vor solchen Anweisungen ausgeführt. Pass mal auf die Reihenfolge der Redirects auf:
Code:
Redirect permanent "/alteKategorie/alteProduktseite" "/neueKategorie/neueProduktseite.html"
Redirect permanent "/alteKategorie" "/neueKategorie"
# Der dritte Redirect wird ignoriert, weil der zweite Redirect schon gepasst hat:
Redirect permanent "/alteKategorie/alteProduktseite2" "/neueKategorie/neueProduktseite2.html"

Ansonsten probier mal RedirectMatch aus:
Code:
RedirectMatch "(?i)^/alteKategorie/alteProduktseite.*$" "/neueKategorie/neueProduktseite.html"
 
Merkwürdig. Vielleicht hast du bei deinen Redirects nicht auf die Groß-/Kleinschreibung geachtet? Beim RedirectMatch schaltet das (?i) die Unterscheidung zwischen Groß- und Kleinschreibung aus.
 
Merkwürdig. Vielleicht hast du bei deinen Redirects nicht auf die Groß-/Kleinschreibung geachtet? Beim RedirectMatch schaltet das (?i) die Unterscheidung zwischen Groß- und Kleinschreibung aus.

Die groß- und Kleinschreibung ist gleichgeblieben, ich denke es lag tatsächlich an dem "/" der jetzt außer Acht gelassen wird. Ich kann den Querstrich jetzt sogar stehen lassen über "match"

Mit der Hirachie habe ich mich bereits angefreundet :d Super zusätzlicher Tipp!
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh