301 Weiterleitung ohne Funktion - Hilfe bei .htaccess

  • Hallo,


    ich bin auf Netcup nun gezogen (Webhosting 2000 SE). Habe die Forensoftware von Xenforo auf Woltlab umgestellt, hat soweit alles geklappt nach ein paar manuellen Änderungen.


    Außer die Links die in den Threads verlinkt waren, die wurden nicht korrekt umgestellt bzw. auch Links die anderswo im Web existieren


    Beispiel:


    https://hyperion-project.org/f…inoffiziell-unofficially/


    In dem Thread ist im ersten Post ganz unten ein Link in der alten Struktur.


    https://hyperion-project.org/t…bian-osmc-libreelec.10768


    Ich habe bisschen gegoogelt, da ich keine Vorkenntnisse habe, und raus gefunden das man das "umschreiben" lassen kann.


    Apache Configuration
    RewriteEngine On
    RewriteBase /
    
    RedirectMatch 301 ^/threads/(.*)+(\.) /forum/index.php?thread/$1

    Den Code habe ich hier getestet https://htaccess.madewithlove.…73-4fd9-ad24-3ef2d051ded5 die Ausgabe funktioniert wie gewünscht und die Output-URL ist korrekt!


    Wenn ich das als .htaccess dann auf den Webserver in den "httpdocs" Ordner lade, funktioniert es aber nicht...


    Ich bin mir sicher, es ist nur etwas kleines, was mir durch mangelndes Wissen nicht auffällt, jetzt kommt ihr ins Spie:


    Wo genau ist mein Fehler bzw. bin ich alles falsch angegangen? Im Anhang sind noch weitere Screenshots von den Hosting-Einstellungen.


    Danke

  • Habe ich, ich habe stundenlang gesucht, die variable die in $1 ist, wird nie mitgegeben, ich weiss nicht wieso... egal ob ich RewriteRule oder RedirectMatch nutze...die variablen bekomme ich nie durchgereicht...habe es auch mit RewriteCond und %1 variablen probiert...

  • Immernur auf die gleiche Seite (https://hyperion-project.org/forum/index.php?thread/)


    Apache Configuration
    RewriteEngine On
    RewriteCond %{REQUEST_URI} ^/threads/(.*)+(\.) [NC]
    RewriteRule threads/(.*)+(\.) https://google.de/search?q= [L,R=301]


    Wenn ich das zum testen eingebe, lande ich trotzdem auf der gleichen Seite...


    edit: Ich hab auch mehrfach die regex getestet und viel probiert. aber irgendwie greift es überall nur auf dem server nicht...(siehe Anhang)

  • Hier gibts weitere Lektüre; und wieso nichts passiert;

    in welchem Folder hast Du denn den .htaccess File?

    und dort kann die Regel nur Relativ zum Folder sein,

    mit einem ^/ kann diese niemals beginnen;

    (die Beispiele in den Seiten sind fast zur Gänze alle f. die Angabe direkt in der Config eines Apache vHosts zugeschnitten und nicht für .htaccess)

    Grüße / Greetings

    Walter H.


    RS, VPS, Webhosting - was man halt so braucht;)

  • Also vorab: Vielen Dank schon mal für die Hilfe, weiß ich echt zu schätzen!


    Die alte Struktur ist so

    https://hyperion-project.org/threads/howto-test-hyperion-ng-pull-requests-on-raspbian-hyperbian-osmc-libreelec.10768


    Davon brauche ich nur die Zahlen nach dem Punkt, in dem Fall 10768

    Diese müsste dann am Ende der neuen URL angefügt werden:

    https://hyperion-project.org/forum/index.php?thread/


    So das ich am Ende


    https://hyperion-project.org/forum/index.php?thread/10768

    habe.


    wenn man auf hyperion-project.org/ geht, habe ich es in foren-software eingestellt das es auf hyperion-project.org/forum kommt (ohne /forum (dies passiert ohne .htaccess)


    Bzgl des ^/ ich habe es auch ohne probiert: die folgenden habe ich getestet..(immer nach und nach)

    Apache Configuration
    RedirectMatch 301 /threads/(.*)+(\.) /forum/index.php?thread/$1
    RedirectMatch 301 /threads/(.*)+(\.)([0-9]*$) /forum/index.php?thread/$3
    RewriteRule /threads/(.*)+(\.)([0-9]*$)$ /forum/index.php?thread/$3 [L,QSA,R=301]


    Ich habe die .htaccess auch einmal im root-Ordner / und im /forum/ Ordner probiert, habe auch extra einen /threads/ Ordner angelegt mit der .htaccess...alles immer ohne Erfolg, ich lande immer auf https://hyperion-project.org/forum/index.php?thread/ (Seite nicht gefunden)


    Ich hoffe ich habe genug Infos geliefert. Danke

  • Also in httpdocs liegt die Datei schon richtig (sofern deine Installation auch da liegt und deine domain dorthin zeigt)


    Was passiert bei:

    RedirectMatch 301 ^/threads/.+\.(\d*) /forum/index.php?thread/$1

    (bzw. [0-9] statt \d)