MrWurf: Apachekonfiguration: Defaultbild

Hallo allerseits,

folgendes Problem: ich habe ein Verzeichnis zum Hosting von Bildern.

Alias /symbol "/Bilder/Symbole"
<Location /symbol/>
        Order allow,deny
Allow from all
</Location>

jetzt möchte ich konfigurieren, dass wenn ein Bild verlinkt wird welches dort nicht existiert, dann ein Default-Bild "default.png" stattdessen geliefert wird. Eine Idee wäre die Anpassung der 404er Fehlerausgabe, aber kann man da auch Bildlinks verwenden?
Oder gibts bessere Vorgehensweisen?

Gruß
MW

  1. Hallo,

    folgendes Problem: ich habe ein Verzeichnis zum Hosting von Bildern.
    jetzt möchte ich konfigurieren, dass wenn ein Bild verlinkt wird welches dort nicht existiert, dann ein Default-Bild "default.png" stattdessen geliefert wird. Eine Idee wäre die Anpassung der 404er Fehlerausgabe

    das wäre das Nächstliegende, wenn du nicht mit mod_rewrite alle Requests auf ein Script umleiten willst, das die Bilder durchreicht.

    aber kann man da auch Bildlinks verwenden?

    Wieso Links? Links setzen ein HTML-Dokument voraus, das haben wir doch im Moment gar nicht.
    Sagen wir's mal so: Es wäre höchst eigentwillig, ein Bild als ErrorDocument auszuliefern. Aber möglich allemal. Du musst nur beachten, dass der Server auch in diesem Fall den richtigen Content Type (also z.B. image/png) angibt, und den HTTP-Status 404 beibehält.
    Hab ich noch nie gemacht, sollte aber funktionieren.

    Oder gibts bessere Vorgehensweisen?

    Wie eingangs angedeutet: Alle Zugriffe auf ein Script leiten, das die tatsächlich angefragte URL untersucht und dann entweder das gewünschte oder das Error-Bild ausgibt. Das ist etwas mehr Aufwand, aber dafür hast du dann auch die volle Kontrolle über die Content Types und Statuscodes.

    Ciao,
     Martin

    --
    Wer morgens zerknittert aufsteht, hat den ganzen Tag Gelegenheit, sich zu entfalten.
    1. Moin Moin!

      »» Oder gibts bessere Vorgehensweisen?

      Wie eingangs angedeutet: Alle Zugriffe auf ein Script leiten, das die tatsächlich angefragte URL untersucht und dann entweder das gewünschte oder das Error-Bild ausgibt. Das ist etwas mehr Aufwand, aber dafür hast du dann auch die volle Kontrolle über die Content Types und Statuscodes.

      Es geht einfacher und performanter:

      Existierende Bilder werden statisch ausgeliefert. Als ErrorDocument für 404 wird irgendeine dynamische URL (CGI, FastCGI, mod_perl, mod_php) angegeben, das entsprechende Programm prüft anhand der Request-URI, ob ein Bild angefordert wurde (im dümmsten Dall also die URL auf /.(png|gif|jpe?g)$/ matcht) und liefert dann und nur dann das 404-Bild, ansonsten eine ganz normale 404-Seite in HTML.

      Alexander

      --
      Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
      1. Hi,

        im dümmsten Dall ...

        Karl?
        Nein, dumm ist der wirklich nicht. Aber er versteht es meisterhaft, sich so darzustellen.

        Ciao,
         Martin

        --
        Okay, Alkohol ist keine Antwort.
        Aber manchmal vergisst man beim Trinken wenigstens die Frage.
        1. Moin Moin!

          »» im dümmsten Dall ...

          Karl?
          Nein, dumm ist der wirklich nicht. Aber er versteht es meisterhaft, sich so darzustellen.

          Jaja, immer feste auf die Leute mit Wurstfinger-inkompatiblen Laptop-Tastaturen einschlagen. Warte ab, ich hol gleich meine große Tastatur raus, und dann ...!

          Alexander

          --
          Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
      2. Es geht einfacher und performanter:

        Existierende Bilder werden statisch ausgeliefert. Als ErrorDocument für 404 wird irgendeine dynamische URL (CGI, FastCGI, mod_perl, mod_php) angegeben,...

        ja, das scheint mir auch besser. Im Erfolgsfall würde ich kein Script brauchen.
        Danke für die Tipps (auch an Martin)

        MW