PHP-Aufrufe in img-Tags -> kein Bild

blalalama

blalalama

Aktives Mitglied
Thread Starter
Dabei seit
29.05.2003
Beiträge
864
Reaktionspunkte
1
Hallo zusammen,

ich hoffe von euch hat noch jemand ne Idee. Folgendes Problem:
Ein Bekannter betreibt ein Forum im Netz und hat dort auch eine Bildergalerie. Bis vor kurzem hat auch alles wunderbar funktioniert. Thumbnails und Bilder wurden korrekt angezeigt. Damit ist nun leider Schluss, denn anstelle der Bilder werden nur noch '?' angezeigt. Dabei hat sich am Coding der Seite nichts verändert.
Folgendes habe ich nun schon selber herausgefunden:
Wenn man sich den HTML-Quelltext anzeigen lässt, sieht man, dass in den img-Tags als src ein PHP-Aufruf gemacht wird. Kopiert man sich nun diesen PHP-Aufruf raus und gibt selbigen direkt in der Adressleiste ein, so wird das Skript korrekt ausgeführt und das Bild angezeigt. Nur wenn es in einem img-Tag als src genutzt wird, funktioniert es nicht.
Ich habe die Vermutung, dass der Webserver php-Skripten in img-Tags verweigert. Ich habe nämlich das komplette Forum auf mein Powerbook geladen und hier funktioniert es ohne Probleme. Könnte es sein, dass es "Sicherheitsfeatures" gibt, die verhindern, dass php-Skripten in img-Tags eingesetzt werden? Ich könnte mir das vorstellen, nachdem es vor kurzem den Bug im IE gab bei dem man Code über Bilder einschleusen konnte.
Der Provider sagt natürlich, dass er nichts gemacht hat (kein Update des Webservers, etc.). Glauben kann ich das aber nicht so wirklich, denn sonst würde es ja noch funktionieren ;)

Falls also jemand eine Idee hat....

gruß + danke
.lama
 
Das Problem muß ein anderes sein. Denn einem Webserver, der eine Anfrage an den PHP-Interpreter weitergibt, ist es vollkommen egal, ob die Anfrage dduch einen "normalen" Link oder durch einen Image-Link getriggert wurde. Denn den Aufruf startet der Browser und aus der Sicht des Webservers, ist der Grund für den Aufruf egal.

Gib doch mal den Link.

Pingu
 
Zuletzt bearbeitet von einem Moderator:
Holla... möchte das Thema noch mal nach oben pushen... Vielleicht hat ja noch jemand ne Idee...
 
Wieso, geht doch?

Nachtrag: Ich habe HTTP-Referrer ausgeschaltet. Evtl. überprüft das Script Referrer, und verweigert die Ausgabe.
 
Zuletzt bearbeitet:
Huh? geht? HTTP-Referrer?

Mir ist nicht klar, was Du meinst...
 
Yep, es liegt am Referer. Da wird der Referer überprüft. Denn wenn ich keinen angebe kommt das:
Code:
ts-mobile:~ ts$ telnet www.kaoskrew.de 80
Trying 83.133.49.186...
Connected to dd7134.kasserver.com.
Escape character is '^]'.
HEAD /html/phpBB2/album_thumbnail.php?pic_id=15&sid=e1386e6911015e2c31eb6d8207cf2215 HTTP/1.1
Host: www.kaoskrew.de

HTTP/1.1 200 OK
Date: Sat, 21 May 2005 20:12:24 GMT
Server: Apache/1.3.27 (Linux/SuSE) mod_fastcgi/2.4.2 FrontPage/4.0.4.3 PHP/4.3.1 mod_perl/1.27 mod_ssl/2.8.12 OpenSSL/0.9.6i
X-Powered-By: PHP/4.3.1
Set-Cookie: phpbb2mysql_data=a%3A0%3A%7B%7D; expires=Sun, 21-May-06 20:12:33 GMT; path=/
Set-Cookie: phpbb2mysql_sid=c31d4d55bd27563dc3e3ae43a78fe890; path=/
Content-Type: image/jpeg

Connection closed by foreign host.

Wenn jedoch ein Referer angegeben ist, dann kommt folgendes:
Code:
ts-mobile:~ ts$ telnet www.kaoskrew.de 80
Trying 83.133.49.186...
Connected to dd7134.kasserver.com.
Escape character is '^]'.
HEAD /html/phpBB2/album_thumbnail.php?pic_id=15&sid=e1386e6911015e2c31eb6d8207cf2215 HTTP/1.1
Host: www.kaoskrew.de
Referer: www.kaoskrew.de/html/phpBB2/album_cat.php?cat_id=2

HTTP/1.1 200 OK
Date: Sat, 21 May 2005 20:26:53 GMT
Server: Apache/1.3.27 (Linux/SuSE) mod_fastcgi/2.4.2 FrontPage/4.0.4.3 PHP/4.3.1 mod_perl/1.27 mod_ssl/2.8.12 OpenSSL/0.9.6i
X-Powered-By: PHP/4.3.1
Set-Cookie: phpbb2mysql_data=a%3A0%3A%7B%7D; expires=Sun, 21-May-06 20:27:15 GMT; path=/
Set-Cookie: phpbb2mysql_sid=45ce77db141cf3df4b0a36dbc99ebdb5; path=/
Content-Type: text/html

Connection closed by foreign host.

Oder besser gleich als Get-Request:
Code:
ts-mobile:~ ts$ telnet www.kaoskrew.de 80
Trying 83.133.49.186...
Connected to dd7134.kasserver.com.
Escape character is '^]'.
GET /html/phpBB2/album_thumbnail.php?pic_id=15&sid=e1386e6911015e2c31eb6d8207cf2215 HTTP/1.1
Host: www.kaoskrew.de
Referer: www.kaoskrew.de/html/phpBB2/album_cat.php?cat_id=2

HTTP/1.1 200 OK
Date: Sat, 21 May 2005 20:27:38 GMT
Server: Apache/1.3.27 (Linux/SuSE) mod_fastcgi/2.4.2 FrontPage/4.0.4.3 PHP/4.3.1 mod_perl/1.27 mod_ssl/2.8.12 OpenSSL/0.9.6i
X-Powered-By: PHP/4.3.1
Set-Cookie: phpbb2mysql_data=a%3A0%3A%7B%7D; expires=Sun, 21-May-06 20:27:38 GMT; path=/
Set-Cookie: phpbb2mysql_sid=507492185a922594959ef3db44a6c64d; path=/
Transfer-Encoding: chunked
Content-Type: text/html

10 
Nicht berechtigt
0

Ich denke da wird der Referer irgendwo im Skript getestet und der paßt dann halt nicht. Da dann die Fehlermeldung als Text kommt, der Browser aber ein Bild erwartet, kann er es nicht darstellen.

Pingu
 
Dann muss das aber an einer Einstellung des Webservers liegen, oder?
Wie gesagt, ging es bisher auf dem Server und auch die Kopie des Forums, die auf meinem Powerbook läuft, macht keine Probleme beim Anzeigen der Bilder
 
Gib doch einfach den Link als URL ein:
src="http://<Pfad>/image.jpg"
Da kann dann nichts mehr schief gehen.

Oder noch besser:
src=http://<? $_SERVER[HTTP_HOST] ?>/<Pfad>/image.jpg
Dann funktionieren die Links nämlich lokal und online ohne Veränderung.
Man kann auch eine $host-Variable definieren und diese verwenden. Dann wirds etwas übersichtlicher.
Wenn alle Bilder im selben Unterverzeichnis liegen, kann man den Pfad auch in die Variable mit reinnehmen; spart Schreibarbeit.

HTH
 
maceis schrieb:
Gib doch einfach den Link als URL ein:
src="http://<Pfad>/image.jpg"
Da kann dann nichts mehr schief gehen.

Oder noch besser:
src=http://<? $_SERVER[HTTP_HOST] ?>/<Pfad>/image.jpg
Dann funktionieren die Links nämlich lokal und online ohne Veränderung.
Man kann auch eine $host-Variable definieren und diese verwenden. Dann wirds etwas übersichtlicher.
Wenn alle Bilder im selben Unterverzeichnis liegen, kann man den Pfad auch in die Variable mit reinnehmen; spart Schreibarbeit.

HTH
Das hat auf irgendwelche Referer einen herzlich geringen Einfluss

@ blalalama: richtig. Hast du vielleicht irgendwas umkonfiguriert?
 
@maceis: Der Tipp ist nun wirklich keine Hilfe. Da müsste ich jetzt die komplette Bildergalerie umprogrammieren. Nein, Danke.
Ich will nicht wissen, wie ich das anders machen kann, damit es funktioniert. Ich will wissen, warum es auf dem Server des Providers in dieser Form nicht mehr funktioniert, während es lokal auf meinem Powerbook funktioniert und es bis vor kurzem auf dem Server des Providers auch ging.
 
Darii schrieb:
Das hat auf irgendwelche Referer einen herzlich geringen Einfluss

@ blalalama: richtig. Hast du vielleicht irgendwas umkonfiguriert?

Endlich mal jemand, der meinen Analysen zustimmt... Danke.

Was jetzt Deine Frage angeht: Nein, wir haben nichts umkonfiguriert. Das können wir auch gar nicht, denn der Server wird durch den Provider konfiguriert. Allerdings sagt der Provider auch, dass er nichts geändert hat.

Wie bereits erwähnt läuft eine 1:1 Kopie des kompletten Forums incl. Bildern problemlos auf meinem Powerbook. Nur auf dem Server des Providers geht es nicht richtig.

Nachtrag: Der Server des Providers verwendet php 4.3.1, apache 1.3.27 und mysql-client 3.23.55. Auf meinem Rechner läuft php 4.3.10, apache 1.3.33 und mysql-client 3.23.49. Ich glaube auber nicht, dass diese Information irgendwie hilft.
 
Zuletzt bearbeitet:
Das mit dem Referer hab ich überlesen, sorry.
blalalama schrieb:
@maceis: Der Tipp ist nun wirklich keine Hilfe. Da müsste ich jetzt die komplette Bildergalerie umprogrammieren. Nein, Danke.
...
War gut gemeint (ja, ich weiss: Das Gegenteil von "gut" ist "gut gemeint").
Was das "Umprogrammieren" angeht, so hält sich der Aufwand in Grenzen, wenn man das mit einem "inteligenten" Filter o. ä. erledigt.

Aber Du hast natürlich Recht;
wenn das bisher so geklappt hat, möchte man natürlich wissen, warum es plötzlich nicht mehr klappt.
 
Sollte auch nicht so streng rüberkommen ;) Klar wäre das eine Lösung, aber derzeit kann ich diese Lösung noch nicht akzeptieren.
 
Darii schrieb:
Das hat auf irgendwelche Referer einen herzlich geringen Einfluss
...
Ähm- ich hab jetzt noch mal schnell nachgesehen.
Ist es tatsächlich so, dass der Referer Links u. ä. mit (absoluten) URL's beeinflusst?
Nach meinem Kenntnisstand nicht, aber vielleicht täusche ich mich da ja.
Meines Wissen dient der Referer lediglich dazu, dem Server (bzw. einem auswertenden Skript) mitzuteilen, von welcher Seite man gekommen ist.
Das sollte aber AFAIK im Normalfall auf die Funktionsfähigkeit von Links keinen Einfluss haben.

Man kann in manchen Browsern auch die Übertragung des Referers (die ja clientseitig ausgelöst wird) unterbinden.
Was würde denn dann passieren?
 
Zuletzt bearbeitet:
blalalama schrieb:
Dann muss das aber an einer Einstellung des Webservers liegen, oder?
Ja und nein.

Man kann einen solchen Referer-Check an den verschiedensten Stellen machen.
- Es kann z.B. mit mod_rewrite direkt im Apachen gemacht werden.
- Es kann z.B. in php (also in phpBB) gemacht werden.

Vielleicht gibt es irgendwo eine Option in phpBB, wo man das Einstellen kann. Es kann auch ein Problem darin liegen, weil ihr mehrere Domains habt, die auf den selben Inhalt verweisen.

Pingu
 
Pingu schrieb:
...
Man kann einen solchen Referer-Check an den verschiedensten Stellen machen.
- Es kann z.B. mit mod_rewrite direkt im Apachen gemacht werden.
...
Schon, aber welcher Provider macht das denn?
Da es hier offensichtlich um "Neue Medien Muennich" geht, kann ich mir das erst recht nicht vorstellen.

Da halte ich es noch für wahrscheinlicher, dass das selbst gemacht wurde (.htaccess).
 
Auf dem Verzeichnis in dem die Bilder liegen ist kein .htaccess... Ich komme prinzipiell direkt an die Bilder ran: Klick me
 
Zuletzt bearbeitet von einem Moderator:
blalalama schrieb:
Auf dem Verzeichnis in dem die Bilder liegen ist kein .htaccess... Ich komme prinzipiell direkt an die Bilder ran: Klick me
Ich hab das mehr als theoretische Möglichkeit gemeint.
Schon klar, dass Du nit "aus Versehen" eine .htaccess-Datei anlegst und das kurz danach wieder vergisst.

Grundsätzlich besteht aber AFAIK die Möglichkeit einen redirect anhängig vom Referer durchzuführen (gemacht hab ich das selbst noch nicht).
 
Zuletzt bearbeitet von einem Moderator:
Hmmm aber irgendwie sind wir des Rätsels Lösung bis jetzt noch nicht näher gekommen...
 
Zurück
Oben Unten