Redirects möglich

Heffalump

Bekanntes Mitglied
Lizenzinhaber
Registriert
6. Apr. 2014
Beiträge
945
Punkte
133
XF Version
  1. 2.1.2
PHP-Version
7.3
Provider/Hoster
FC-Hosting
Hallo Leute,

nach dem Update auf XF2 habe ich Probleme mit einigen Bildern, die noch mit alten vBSEO URLs eingebunden sind. (Etwa 2000)

Hat jemand eine Idee wie ich diese Adressen umschreiben kann?

domain.com/forum/attachments/kuechenplanung-im-planungs-board/87322d1343161271-hausneubau-und-schwierige-frage-der-kueche-grundriss-eg.jpg

nach

domain.com/forum/attachments/87322/

Habe schon mal bei XF angefragt, aber mein Eindruck ist, dass die Reaktionen dort spürbar nachgelassen haben.

Danke
 
Apache?

.htaccess im Verzeichnis forum
Code:
RewriteEngine On
RewriteBase /forum
RewriteRule ^attachments/[^/]+/(\d+)d(\d+)-[^\.]+\.jpg$ attachments/$1 [R=Permanent,L]
 
Danke Kirby. Ja, ist für Apache.
Funktioniert leider nicht. Irgendwie muss man wohl noch mitteilen, dass nur die Ziffern vor dem "d" die ID ist.

Es könnte auch auf diese URL weitergeleitet werden:

domain.com/forum/attachments/grundriss-eg-jpg.87322/

Das macht es aber wohl nicht einfacher.
 
Das funktioniert exakt so, wenn es das nicht tut hast Du evtl. noch andere Regeln die in Kombination einen Konflikt verursachen.

Steht in der Datei .htaccess im Verzeichnis forum noch anderes als die obigen 3 Zeilen?
Gibt es eine .htaccess im Hauptverzeichnis?
Stehen Regeln direkt in der vHost-Konfiguration?
 
Und du hast sowas von Recht. Es funktioniert tatsächlich.

Diese Regeln waren im Weg:

Code:
#RewriteRule ^attachments/(.+)/([0-9]+)[d-](.+)$ attachment.php?attachmentid=$2 [L]
#RewriteRule ^attachments/(.+)/([0-9]+)[d-](.+)$ attachment.php?attachmentid=$1 [L]
#RewriteRule ^attachments/(.+)/(.+)_([0-9]+)\.([a-zA-Z0-9]+)$ attachment.php?attachmentid=$3 [L]

Nachdem ich sie auskommentiert habe funktioniert deine Regel.

Jetzt frage ich mich nur welche alten URLs nicht umgeleitet werden wegen dem uncomment?

Ich check das mal.

Vielen Dank. Das waren einige tausend Bilder, die jetzt wieder angezeigt werden.
 
Ich hänge hier nochmal eine Frage an:

domain.com/forum/mitglieder/tantchen-3606.html

soll umgeleitet werden nach:

domain.com/forum/mitglieder/tantchen.3606/

Danke für die Hilfe
 
RewriteRule ^mitglieder/([^/]+)-(\d+)\.html$ mitglieder/$1.$2/ [R=Permanent,L]

Allerdings ohne Gewähr, d.h. ungetestet.
 
Du bist mein Retter. Ich teste das gleich. Hast du die auch im Kopf?

domain.com/forum/galerie/mitglieder/menorca.3115/alben

nach:

domain.com/forum/galerie/alben/mitglieder/menorca.3115/
 
Mitglieder werden schon mal erfolgreich umgeleitet. Dankeschön :)
 
Im Kopf nicht, aber ich kann sie dir einfach hintippen - reguläre Ausdrücke sind kein Hexenwerk (können aber nahezu beliebig komplex werden).

RewriteRule ^galerie/mitglieder/([^/]+)\.(\d+)/alben$ galerie/mitglieder/$1.$2/ [R=Permanent,L]

Auch hier gilt wieder: Ist nicht getestet, nur aufgeschrieben.

Tipp: Regex101 - online regex editor and debugger
 
Wenn du nicht testest funktionieren sie am besten. ;)
Wegen der Gefahr der Komplexität habe ich mich noch nicht damit befasst. Muss ich mal tun.... später....

Hast mir sehr geholfen. Danke.
 
Zurück
Oben