Bildergalerie vor direktaufruf schützen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Bildergalerie vor direktaufruf schützen

    Hallo Leute,
    ich habe mit PHP eine Bildergalerie geschrieben "picturegallery.php"
    ...nun ist es aber möglich dass wenn man den Pfad kennt wo die Bilder
    gespeichert sind auch direkt auf diese Zugreifen kann.

    Ich nehme an das geht irgendwie mit dem referer check von htaccess Dateien.

    Leider konnte ich bisher nichts brauchbares zu dem Thema finden...vllt hat ja jemand von euch einen guten Link auf Lager

    viele Grüße
    Micha

  • #2
    Also wenn nur die picturegallery.php auf die Bilder zugreift und der User im img src nur diese Datei hat, dann geht das am besten mittels einer .htaccess Datei
    Code:
    Order Allow,Deny
    Allow from localhost
    Allow from 127.0.0.1
    So sollte keiner, auch wenn er die Pfade kennt auf die Bilddateien zugreifen.

    Gruss

    tobi

    p.s. auf den RefererCheck würde ich verzichten, da sich dieser sehr einfach fälschen lässt.
    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

    Kommentar


    • #3
      Hallo Tobi,
      danke für deine schnelle Antwort
      allerdings bekomme ich jetzt auch über mein Skript keine Bilder mehr angezeigt.

      Die Bildergalerie funktioniert so das einfach eine html seite ausgegeben wird in der das gewünschte Bild per "img src " tag eingebunden ist.

      Kommentar


      • #4
        Die Bildergalerie funktioniert so das einfach eine html seite ausgegeben wird in der das gewünschte Bild per "img src " tag eingebunden ist.
        Mit dieser Version wirst du aber einen Direktaufruf niemals sicher unterbinden können !
        Du solltest in jedem img src in etwa folgendes angeben
        Code:
        <img src="picturegallery.php?bild=2" />
        In der Gallery
        PHP-Code:
        //erstmal prüfen ob bild gesetzt ist und ob das Bild auf dem Server existiert
        //isset(), file_exists() sollten da schonmal weiterhelfen
        //dann musst du das Bild mittels readfile() einlesen und mittels header() die korrekten Header für das Bild an den Browser senden 
        So kennt der User "nur" picturegallery.php?bild=2 und diese ruft er auf. Das Script greift dann auf das Bild zu was gemäss .htaccess erlaubt ist.

        Gruss

        tobi
        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

        Kommentar


        • #5
          ahhh...okay verstehe was du meinst
          werd das gleich mal umbauen und testen

          herzlichen dank

          Kommentar

          Lädt...
          X