301 Weiterleitung

shadow26

New Member
Hey Community,

weiß wer wie ich eine saubere 301 Weiterleitung per htaccess erstellen kann?

Geht darum das vorher typo3 eingesetzt wurde ... Die Adressen sahen so aus:
domain.de/index.php?id=12

Nun verwende ich Wordpress und suchmaschinenfreundliche URLs...
domain.de/unternehmen/

Nun sollen ja Anfragen nicht ins leere laufen bzw. gebe ich das alte Muster ein leitet er mich auf die Startseite (ist aber auch nicht gut für Google & co.)

Was müsste korrekterweise in der htaccess stehen?
Hab es so versucht:
RedirectPermanent /index.php\?id=6 http://www.domain.de/unternehmen/
aber ohne Ergebnis... er leitet trotzdem auf die Startseite.

Komisch ist auch das meine Startseite, wenn ich im Firefox die URL eingebe ein /?id=5 hintergehängt wird (nur bei der Startseite, nur im FF ... in Chrome / IE tut er dies nicht)

Aber dazu lässt sich in der htaccess Datei nichts finden... :/ Bin echt ratlos...
 
Ein 301 erst setzen wenn du 100% sicher bist das die Regeln funktionieren. Andernfalls kannst du jedes mal erst den Browsercache löschen nachdem du änderungen gemacht hast.

Bis dahin 302 (od. 303).

Code:
Redirect 302 /index.php?id=12 /unternehmen/
sollte reichen (ohne ? escape) wenns klappt einfach 302 durch 301 ersetzen.

Wenn dir der WP-Overhead nicht wichtig ist gibt's auch ein nettes UI-Plugin für WP https://wordpress.org/plugins/redirection/ mit dem du Pfade beliebig weiterleiten kannst.
Als netten Nebeneffekt bekommst du noch eine einfache Statistik wie oft ein bestimmter Redirect ausgelöst worden ist.
 
Last edited by a moderator:
Vielen Dank MadMakz!

Aber leider funktioniert es noch nicht so ... ich weiß nicht weshalb aber wenn ich nun die URL + /index.php?id=12 eingebe, lande ich trotz allem auf der Startseite und der Browser macht daraus "http://www.domain.de/?id=12"

Warum erschließt sich mir nicht... Ich hab dir aber mal meine Domain per PN geschickt. Vielleicht siehst du dann woran es liegen könnte...
 
Ach ja, query String, uh, setz mal noch ein ? hinter das letzte /, im Beispiel also /unternehmen/? Evtl. musst du den Slash davor weglassen. Habe ich nicht mehr genau im Kopf.
 
Last edited by a moderator:
Er weigert sich, Code sieht nun aus wie folgt...

# Webseiten Umzug
<IfModule mod_rewrite.c>
RewriteEngine On
Redirect 302 /index.php?id=5 /?
Redirect 302 /index.php?id=6 /unternehmen/?
Redirect 302 /index.php?id=12 /leistungen/?
</IfModule>

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress
 
Back
Top