Adaptive Images + Contenido

Gesperrt
Calimero
Beiträge: 60
Registriert: Do 4. Aug 2005, 13:44
Kontaktdaten:

Adaptive Images + Contenido

Beitrag von Calimero » Fr 28. Jun 2013, 14:29

Hallo liebe Community,

beim surfen bin ich auf folgendes PHP-Plugin gestoßen:
http://adaptive-images.com/

Diese Plugin liefert/erstellt, je nach Konfiguration, Bilder in einer bestimmten Größe. Das ist gerade für mobile Webseiten ein ziemlicher Vorteil, da ein Webseite mit sehr großen Headerbildern auf dem Handy oder Tablet einen hohen Traffic verursachen. Wenn ich dann noch eine schlechte Internetverbindung habe, laden große Bilder (200kb) schon etwas länger ;).

Nun das Problem:
Deaktiviere ich bei meiner Contenido Webseite das Mod-Rewrite Plugin funktioniert das AI-Plugin tadellos.
Aktiviere ich das Plugin liefert das Plugin mir anstatt einem Bild die Webseite.

Das Problem liegt sowohl an der HTACCESS Datei von Contenido wie auch an dem Einbinde des Plugins:
Folgend die Zeilen für das Einbinden des Plugins:

RewriteCond %{REQUEST_URI} /cms/upload/header/
RewriteRule \.(?:jpe?g|gif|png)$ adaptive-images.php

Nun der entstehende Konflikt mit der Contenido Zeile:
RewriteRule !\.(js|ico|gif|jpg|jpeg|png|css|pdf)$ front_content.php [NC,QSA,L]

Vielleicht kennt sich ja einer schon mit diesem Problem aus und hat das schon gefixt.
Hat jemand einen Ansatz wie man diesen Konflikt des Routings beheben kann?

Hinweis:
Das Plugin ist so gebaut, dass die "adaptive-images.php", das angeforderte Bild in der spezifischen Auflösung liefert!

Über jegliche Hilfe wäre ich sehr dankbar!
Viele Grüße
Calimero

Spider IT
Beiträge: 1416
Registriert: Fr 3. Dez 2004, 10:15

Re: Adaptive Images + Contenido

Beitrag von Spider IT » Fr 28. Jun 2013, 16:10

Hallo Calimero,

da gibt es keinen Konflikt, denn in der unteren Zeile steht ein ! davor (heißt "nicht").
Der vermutliche Grund, warum du Webseiteninhalt kriegst, ist der, dass du die PHP-Datei nicht bei den Ausnahmen ausdrücklich erlaubt hast (der Abschnitt direkt über die Weiterleitungszeile, wo auch upload und images erlaubt werden).

Gruß
René

Calimero
Beiträge: 60
Registriert: Do 4. Aug 2005, 13:44
Kontaktdaten:

Re: Adaptive Images + Contenido

Beitrag von Calimero » Mo 1. Jul 2013, 09:00

Hallo Spider,

vielen Dank für Deine Nachricht. Leider funktioniert das noch nicht.
Hier meine komplette HTACCESS Datei. Vielleicht kannst Du mir nochmal helfen :)?!

Code: Alles auswählen

###############################################################################
# Contenido AMR plugin restrictive rewrite rules set
#
# Contains strict rules, each rewrite exclusion must be set manually.
#
# - Exclude requests to directories usage/, contenido/, setup/, cms/upload/
# - Exclude requests to cms/front_content.php
# - Pass thru requests to common ressources (pics, js, css, pdf)
#
###############################################################################


# Enable following lines to run PHP5 on 1und1.de (1and1.com)
# ----------------------------------------------------------
#AddType x-mapp-php5 .php
#AddHandler x-mapp-php5 .php

<IfModule mod_rewrite.c>

# Enable rewrite engine
# ---------------------
RewriteEngine on

# Specify a base URL-path for the rules
# -------------------------------------
RewriteBase /cms


# Catch some common exploits in query string to get rid of them
# NOTE: Conditions to prevent protocolls (ftp, http[s]) in query string could be a
#       disadvantage in some cases
# --------------------------------------------------------------------------------
RewriteCond %{QUERY_STRING} contenido_path=.*$  [NC,OR]
RewriteCond %{QUERY_STRING} cfg\[path\]=.*$  [NC,OR]
RewriteCond %{QUERY_STRING} _PHPLIB\[libdir\]=.*$  [NC,OR]
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} ftp://.*$  [NC,OR] 
RewriteCond %{QUERY_STRING} http[s]*://.*$ [NC] 
RewriteRule ^.* - [F,L]  # all matching conditions from above will end in nirvana

# ADAPTIVE IMAGES
RewriteCond %{REQUEST_URI} !/cms/upload/content/
RewriteCond %{REQUEST_URI} !/cms/upload/layout/
RewriteCond %{REQUEST_URI} !/images/
RewriteRule \.(?:jpe?g|gif|png)$ adaptive-images.php



# Exclude some files and directories from rewriting
# -------------------------------------------------
RewriteRule ^usage/.*$ - [L]
RewriteRule ^contenido/.*$ - [L]
RewriteRule ^setup/.*$ - [L]
RewriteRule ^cms/upload/.*$ - [L]
RewriteRule ^cms/test/.*$ - [L]
RewriteRule ^cms/front_content.php.*$ - [L]
RewriteRule ^adaptive-images.php.*$ - [L]
# enable following line if you want to run the plugin test



# One RewriteRule to rule them all
# --------------------------------
RewriteRule !\.(js|ico|gif|jpg|jpeg|png|css|pdf)$ front_content.php [NC,QSA,L]

</IfModule>
Diese Zeile meintest Du, oder?
RewriteRule ^adaptive-images.php.*$ - [L]

Viele Grüße
Calimero

Spider IT
Beiträge: 1416
Registriert: Fr 3. Dez 2004, 10:15

Re: Adaptive Images + Contenido

Beitrag von Spider IT » Mo 1. Jul 2013, 13:53

Hallo Calimero,

ja, die Zeile meine ich.
Liegt denn die adaptive-images.php im Root-Ordner?
Wenn sie (wie ich vermute) in cms liegt, musst du das noch davor schreiben:

Code: Alles auswählen

RewriteRule ^cms/adaptive-images.php.*$ - [L]
Gruß
René

Calimero
Beiträge: 60
Registriert: Do 4. Aug 2005, 13:44
Kontaktdaten:

Re: Adaptive Images + Contenido

Beitrag von Calimero » Di 2. Jul 2013, 08:30

Hallo Spider,

die Datei liegt auf der Root Ebene. Von daher sollte das eigentlich mit dem Eintrag in der HTACCESS Datei passen.

Kommentiere ich diese Zeile aus:

Code: Alles auswählen

RewriteRule !\.(js|ico|gif|jpg|jpeg|png|css|pdf)$ front_content.php [NC,QSA,L]
Kann ich die Bilder ganz normal öffnen.

Kommentiere ich die o.g. Zeile wieder ein, liefert mir die Seite statt eines Bildes die komplette Webseite.

Sicher, dass es dort keinen Konflikt im "Routing" gibt? :)

Viele Grüße und nochmals danke!
Calimero

Spider IT
Beiträge: 1416
Registriert: Fr 3. Dez 2004, 10:15

Re: Adaptive Images + Contenido

Beitrag von Spider IT » Di 2. Jul 2013, 12:44

Hallo Calimero,

wo soll es denn da einen Konflikt geben?
Erstens werden in der Zeile alle diese Endungen ausgeschlossen, zweitens rufst du eine PHP-Datei auf.
Schau dir mal die genauen Links deiner Bilder an, denn da scheint irgendwas nicht zu passen.
Was mir dazu einfällt ist, dass es evtl. sein kann, dass deine Bilder per src="adaptive-images.php?xx=yy" aufgerufen werden und dann dieser Aufruf dank base_href auf http://www.domain.tld/cms/adaptive-images.php?xx=yy erweitert wird.
Wenn das der Fall ist, solltest du entweder den kompletten Pfad zur adaptive-images.php in die src-Angaben kriegen, oder die adaptive-images.php in /cms ablegen und die .htaccess dementsprechend anpassen.
Mehr kann ich ohne was zu sehen nicht dazu sagen.

Gruß
René

malsdgtac
Beiträge: 717
Registriert: Fr 12. Mär 2004, 15:50
Kontaktdaten:

Re: Adaptive Images + Contenido

Beitrag von malsdgtac » Mo 19. Mai 2014, 17:05

Hallo Calimero,

konntest du eine Lösung finden? Ich habe genau das gleiche Problem und habe ich den Eindruck, dass es nicht am RewriteBase liegt.

malsdgtac
Beiträge: 717
Registriert: Fr 12. Mär 2004, 15:50
Kontaktdaten:

Re: Adaptive Images + Contenido

Beitrag von malsdgtac » Mo 19. Mai 2014, 17:22

Ich habe jetzt eine Lösung gefunden, die bei mir funktioniert:

Code: Alles auswählen

RewriteRule \.(?:jpe?g|gif|png)$ adaptive-images.php [L]
Das [L] habe ich am Ende ergänzt. Dadurch führt er keine weiteren Anweisungen aus der htaccess für jpg, gif und png aus.
Nachdem ich jetzt sehe das das geht ist es ja eigentlich auch logisch - er ruft ja nicht mehr jpg,gif oder png auf, sonder die adaptive.images.php - und daher wird der Aufruf zur front_content.php geleitet.

Gesperrt