Htaccess-rewrite

servus,

ich bins mal wieder, mit nem htaccess-rewrite :wink:

/bilder/news/img/xyz/file.jpg
und
/bilder/news/thumb/xyz/file.jpg

sollen auf

/bilder/news/?link=/img/xyz/file.jpg
bzw
/bilder/news?link=/thumb/xyz/file.jpg

umgeschrieben werden.

versucht habe ich, eine htaccess-datei im ordner

/bilder/news/

zu erstellen. inhalt:

RewriteEngine on
RewriteRule ^([A-Za-z0-9-]+)/?$ index.php?link=$1 [QSA]

wirkung: 0 hat jmd vielleicht ne ahnung?

danke im voraus

gruß

Hi,

das erste das man dort sieht ist,

[quote]RewriteEngine on
RewriteRule ^([A-Za-z0-9-]+)/?$ index.php?link=$1 [QSA][/quote]
Das du geschrieben hast […]Zeile2: 9-]+)/?$ index[…]. Was willst du mit dem Slash?
So sucht das System nach dem Pfad “/bilder/news/IRGENDWELCHENKOMBINATIONEN/”.

Lass den Slash mal weg dann sucht der nach allem. Am besten schreib es so:

RewriteEngine on
RewriteRule ^(.*)/(.*).jpg?$ index.php?link=$1 [QSA]

(ungetestet)
mit dem Fragezeichen bin ich mir nicht sicher ob das hin kommt aber meiner Meinung nach nicht

mfg
99shi

hi,

danke, hat aber leider auch keinen effekt…

@99shi
um es noch einmal klar zu stellen, der Slash da mag zwar Schwachsinn gewesen sein, dennoch war der dort total “egal”^^
"?" bedeutet bei einem RegEx soviel wie: “1x oder kein mal” also Slash “ja” als auch "nein"
Deins heißt jetzt also “.jpg” oder “.jp”

Ich würd ja mit nem anderen Ansatz anfangen^^ Entweder 2x Conditions um nur bestimmte Pfade zu gestatten, oder etwas wie
/(img|thumb)/([\w-]+)
wobei ich nach wie vor die Ordner Struktur nicht ganz verstehe geschweige denn das Vorhaben :stuck_out_tongue:

Eigl. könnte man auch ne [size=85].htaccess[/size] in die jeweiligen Ordner packen welche einfach alle Dateien darin umschreibt^^ Ist vermutlich schneller außer man hat eh schon eine [size=85].htaccess[/size]

ich habe meinen bilderordner mit einem parallelen thumbnail-verzeichnis, um die bplaced-ressourcen minimal zu beanspruchen.

um zum beispiel zählungen vorzunehmen, oder berechtigungen zu regeln, möchte ich jedes bild im ordner news erst durch eine index.php schicken, in der ich zb prüfen kann ob jmd eingeloggt ist.

hätte man andernfalls den kompletten pfad, könnte man direkt auf die bilder zugreifen, was ich gerne verhindern würde.

die ordnerstruktur sieht in etwa so aus

/bilder |__news |___img | |___veranstaltung1 | |__5.jpg | |__4.jpg | |__3.jpg | |__2.jpg | |__1.jpg | |___thumb |___veranstaltung1 |__5.jpg |__4.jpg |__3.jpg |__2.jpg |__1.jpg

is es definitiv immer .jpg?
Musst du Unterordner in img/ und thumb/ haben? Reicht 1 Unterordner?

Je nach dem könntest du auch wirklich einfach alles akzeptieren und dann eben dein Script zum prüfen des Pfades nutzen^^ Wäre die frage was schneller ist xD [size=85].htaccess[/size] RegEx oder PHP

hm… wär mir wirklich am liebsten, wenn einfach alles unterhalb von news auf die index weitergeleitet werden würde, aus dem einfachen grund, dass ich dann weiß, was ich tue, das ist mit htaccess nicht der fall :unamused:

also /bilder/news/
auf /bilder/news/index.php?link=
umleiten.

Das wäre dann ne einfache [size=85].htaccess[/size] im Ordner News mitRewriteEngine On RewriteRule ^/(.*)$ index.php?path=$1 [L]Musst dich dann allerdings um Sachen wie …/ kümmern, nicht das jemand dann alle möglichen Dateien ausgeben kann weil dein Script das erlaubt^^ [size=85](damit auch deine Logindaten or what ever)[/size] z.B. im Script oder mit einer RewriteCond vor der Rule wieRewriteCond %{REQUEST_URI} !\.\.[size=85](sollte … in der URL verbieten)[/size]
Du scheinst mir allerdings auch zu viel mit [size=85].htaccess[/size] machen zu wollen^^ Ich würde es ja auf’s nötigste begrenzen und so wenig wie möglich umschreiben.

PS: alle meine hier gegebenen Beispiele sind eben das, Beispiele die eventuell so noch nicht ganz funktionieren^^ Zumindest setze ich derzeit Vorraus das der Pfad immer relativ von der [size=85].htaccess[/size] ist… was nicht wirklich stimmen muss :stuck_out_tongue: Also entweder nen RewriteBase oder den Pfad angeben eg. /bilder/news/…