Imagecache_external: Thumbnails in verschachteltem Directory und im Frontend nicht aufrufbar

am 18.04.2013 - 20:32 Uhr in
Hallo liebe DrupalCenter Community!
Module:
Imagecache External
Media
Remote Stream Wrapper
Szenario:
Wir haben einen Inhaltstypen, in dem Charaktere gesammelt werden. Nun will ich in diesem Inhaltstyp viele verschiedene Bilder von diesen Charakteren, die extern liegen, einbetten. Das war mit dem Remote Stream Wrapper Modul soweit möglich, jedoch erlaubt mir das Modul nicht die Nutzung von Image Styles, um Thumbnails für die extern liegenden Bilder zu erstellen. Jetzt kommt Imagecache External ins Spiel, welches die Nutzung von Image Styles auch auf externe Bilder erlaubt - somit sind Thumbsnails möglich.
Problem:
- Es werden URLs ausgegeben, die mit einem kryptischen Schnipsel enden, welche zu einer Fehlermeldung führen: Zugriff verweigert
- Thumbnails werden in Ordner gespeichert, die der URL des extern liegenden Bildes entsprechen: drupal\sites\default\files\styles\cover\http\img4.picload.org\image\acdcwwi\imagestyle_examp.png
Detaillierte Problembeschreibung:
Imagecache External erstellt Thumbnails, die diese URL ausgibt:
http://localhost/drupal/sites/default/files/styles/cover/http/img4.picload.org/image/acdcwwi/imagestyle_examp.png%3Fitok%3DAyQfRnDQ
Rufe ich diese URL auf, erscheint nur folgende Fehlermeldung:
Zugriff verweigert
Sie haben keine Zugriffsberechtigung für diese Seite.
Entferne ich diesen kryptischen Schnipsel, der an der URL angehängt wird (%3Fitok%3DAyQfRnDQ), ist das Thumbnail aufrufbar.
Darüberhinaus wird das Thumbnail in einem Ordner abgespeichert, welcher dem externen Link entspricht:
drupal\sites\default\files\styles\cover\http\img4.picload.org\image\acdcwwi\imagestyle_examp.png
Das würde bei 1000 extern liegenden Bildern dazu führen, dass tausende Ordner erstellt und verschachtelt werden.
Das Bild, welches extern liegt ist folgendes: http://img4.picload.org/image/acdcwwi/imagestyle_examp.png
Ich hoffe, dass jemand Lösungen zu den Problemen hat.
Mit freundlichen Grüßen,
KG
- Anmelden oder Registrieren um Kommentare zu schreiben
Die kryptischen Schnippsel
am 19.04.2013 - 13:40 Uhr
Die kryptischen Schnippsel sind normal - dies wurde in Drupal 7.20 als Sicherheitsfeature mit eingeführt.
http://drupal.org/drupal-7.20-release-notes (dort findest du weitere Infos zur Einführung dieses Tokbens)
Weitere Infos und eine mögliche Lösung deines Problems wird auch hier beschrieben:
http://drupal.stackexchange.com/questions/63226/drupal-7-20-image-styles...
Die erstellten Ordner sind soweit auch normal, da es sich hier um das Standardverhalten von Imagecache bzw. dem Modul imagecache_external handelt. Dies kannst du auch nachvollziehen, wenn du dir ein normales Image-Style anlegst und dir dann die erstellten Ordner anschaust.
SteffenR
http://www.twitter.com/_steffenr
Drupal-Initiative e.V.
Kodierung des Tokens
am 19.04.2013 - 16:35 Uhr
Hallo SteffenR,
erstmal Danke für deine Antwort. Jetzt weiß ich zumindest, wieso die URLs solch ein Token am Ende bekommen.
Das Problem ist nun, dass das Token kodiert weitergegeben wird, denn dekodiert funktioniert die URL zum Thumbnail:
%3Fitok%3DAyQfRnDQ => Access Denied.
?itok=6kuQtaDo => Funktioniert problemlos.
Leider funktioniert keiner der Patches bzw. sind diese bereits in der aktuellen Version von Drupal eingebaut. Ich nutze Drupal 7.22 (hätte ich im Eingangspost erwähnen sollen).
Eine Idee, wie man dieses Verhalten umbasteln kann? Theoretisch müsste statt der gesamte Pfad nur der Dateiname gelesen und das Bild dann dort abgespeichert werden.