Autor |
Nachricht |
Smooth-Graphics
Threadersteller
Dabei seit: 22.05.2006
Ort: -
Alter: -
Geschlecht:
|
Verfasst Fr 28.05.2010 12:04
Titel Rewriting Engine - URL Forwarding |
|
|
Ich müsste auf Grund einer URL Umstellung alte URL Strukturen auf neue übertragen/weiterleiten.
Am liebsten natürlich als 301 Redirect via .htaccess + mod_rewrite.
Die alte Linkstruktur ist folgende:
Code: | http://www.url.de/blog/2010/01/title-name-of-blog-post |
Die neue folgende:
Code: | http://www.url.de/blog/title-name-of-blog-post |
Geht das irgendwie? Mit RegEx u.ä. kenne ich mich überhaupt nicht auf. Leider....
Vielen Dank für eure Tipps,
Gruß
Smooth-Graphics
|
|
|
|
|
baskoralle
Dabei seit: 17.02.2006
Ort: hamburch
Alter: 49
Geschlecht:
|
Verfasst Fr 28.05.2010 12:11
Titel
|
|
|
KLICK
|
|
|
|
|
Anzeige
|
|
|
Smooth-Graphics
Threadersteller
Dabei seit: 22.05.2006
Ort: -
Alter: -
Geschlecht:
|
Verfasst Fr 28.05.2010 12:13
Titel
|
|
|
baskoralle hat geschrieben: | KLICK |
Ich brauche natürlich eine dynamische Lösung. Ich möchte nicht 200 Links in meine htaccess Datei manuell einpflegen und weiterleiten.
|
|
|
|
|
bacon
Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Fr 28.05.2010 13:17
Titel
|
|
|
Ein möglicher Ansatz (ungetestet):
RewriteRule /(.[^/]+?)$ blog/$1
|
|
|
|
|
Smooth-Graphics
Threadersteller
Dabei seit: 22.05.2006
Ort: -
Alter: -
Geschlecht:
|
Verfasst Fr 28.05.2010 14:10
Titel
|
|
|
bacon hat geschrieben: | Ein möglicher Ansatz (ungetestet):
RewriteRule /(.[^/]+?)$ blog/$1 |
Könntest du mir das mal erklären?
Also nach dem Slash url.de/ kann eine Zeichenfolge stehen, die
(. ein beliebiges Zeichen hat,
[^/] außer ein Slash (wäre aber doch in 2010/05/title... ? )
+ Slash (?) darf mind. einmal vorkommen
? Slash (?) darf einmal oder gar nicht vorkommen (widerspricht sich doch mit +? )
) schließt den Ausdruck ab
$ kennzeichnet die Variable
Soweit korrekt? Was bedeutet das "+?", m.M.n. wiedersprüchlich oder?
|
|
|
|
|
m
Moderator
Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht:
|
Verfasst Fr 28.05.2010 17:38
Titel
|
|
|
Geht´s um ein Wordpress Blog? Redirects für Permalinks sind Teil des Cores, darum musst du dich
also eigentlich nicht mehr selbst kümmern. Es gibt aber auch vers. Plugins die ganz nützlich sein können
um die Permalinkstruktur weiter anpassen zu können, oder auch für Redirects, wie z.B.:
http://wordpress.org/extend/plugins/advanced-permalinks/
Zuletzt bearbeitet von m am Fr 28.05.2010 17:47, insgesamt 1-mal bearbeitet
|
|
|
|
|
Smooth-Graphics
Threadersteller
Dabei seit: 22.05.2006
Ort: -
Alter: -
Geschlecht:
|
Verfasst Sa 29.05.2010 10:39
Titel
|
|
|
m hat geschrieben: | Geht´s um ein Wordpress Blog? Redirects für Permalinks sind Teil des Cores, darum musst du dich
also eigentlich nicht mehr selbst kümmern. Es gibt aber auch vers. Plugins die ganz nützlich sein können
um die Permalinkstruktur weiter anpassen zu können, oder auch für Redirects, wie z.B.:
http://wordpress.org/extend/plugins/advanced-permalinks/ |
Nein, es geht um eine Wordpressblog URL Struktur, die zu einer neuen URL Struktur (nicht WP!) weitergeleitet werden soll.
Ich habe nun folgenden Ansatz ausgetüftelt, der leider aber nicht auf meinem V-Server (Strato) funktioniert?
Code: |
# Redirect old urls
RewriteRule ^blog/([0-9]{4})/([0-9]{2})/(.*)/$ blog/$3 [L,R=301]
# Rewrite domain.com -> www.domain.com -- used with SEO Strict URLs plugin
RewriteCond %{HTTP_HOST} !^www\.url\.de [NC]
RewriteRule ^(.*)$ http://www.url.de/$1 [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
|
Auf einem anderen Server funktioniert das ganze tadellos. Weiß hier noch einer einen Rat?
|
|
|
|
|
bacon
Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Sa 29.05.2010 11:43
Titel
|
|
|
Zum Fragezeichen hinter'm "+":
wikipedia hat geschrieben: | Angenommen, es wird der reguläre Ausdruck A.*B auf die Zeichenfolge „ABCDEB“ angewendet, so würde er sie komplett als „ABCDEB“ finden. Mit Hilfe des „non-greedy“-Quantors „*?“ matcht der nun modifizierte Ausdruck – also A.*?B – nur die Zeichenkette „AB“, bricht also die Suche nach dem ersten gefundenen „B“ ab. Ein gleichwertiger regulärer Ausdruck für Interpreter, die diesen Quantor nicht unterstützen, wäre A[^B]*B. |
Das hier:
^blog/([0-9]{4})/([0-9]{2})/(.*)/$
Kannst du prinzipiell also auch so schreiben:
^blog(.*?)/(.[^/]+?)$
^ und $ bedingen dann die Position der Fundstelle. Ansonsten: RTFM Zu dem "da funktioniert's, dort funktioniert's aber nicht" Problem kann ich leider nix sagen, da ich die Maschinen nicht kenne.
Zuletzt bearbeitet von bacon am Sa 29.05.2010 11:44, insgesamt 1-mal bearbeitet
|
|
|
|
|
|
|
|
Ähnliche Themen |
URL Rewriting - Wie?
Corel X3 PDF Engine
Looking For PHP Template Engine
[php] Beratung PHP Template Engine
smarty template engine > installieren ...?
3D Engine / Character Animation für Visual Basic
|
|