Ankündigung

Einklappen
Keine Ankündigung bisher.

Webshop für Fotos - Handhabung mit den Original Fotos

Einklappen

Neue Werbung 2019

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

  • Webshop für Fotos - Handhabung mit den Original Fotos

    Hallo Leute!
    Ich soll für eine Firma einen Webshop für Fotos programmieren.
    Das System soll so aussehen:
    Man läd die Originalbilder hoch, generiert daraus Kleine Tumbnails mit einem Wasserzeichen -> wenn dem Kunden Fotos gefallen, dann kann er diese ggf. digital bestellen.
    Wenn er sie digital bestellt und bezahlt hat, dann hat er Zugriff auf die bestellten Originalfotos.

    Nun stellt sich für mich die Frage wo ich die original Fotos speichern bzw. vor einem Klau schützen soll.

    Ich hab mir 2 Lösungen überlegt.

    1.) Die Originalfotos in der Datenbank mittels Base64 speichern. somit wären die Fotos sicher von aussen und wenn die Datenbank gesichert wird, dann werden die Fotos mitgesichert. Nachteil: Die Datenbank wird sicher dadurch sehr langsam.

    2.) Die Fotos auf ein Verzeichnis auf dem Webserver speichern und dieses dann mittels htaccess. sichern. Ich weiss halt nicht ob dies einen bessern Schutz darstellt und ob man mit php dann einfach die Bilde anzeigen / auslesen kann, wenn diese in einem geschützen Ordner liegen.

    Wie würdet Ihr dieses Problem lösen?

    Danku und lg
    Flash

  • #2
    Moin,

    also Dateien solltest du meiner Meinung nach nicht in der Datenbank ablegen, höchstens deren Metainformationen (EXIF etc.) und wenn du die Bilder in einem Ordner ausserhalb des Document Root ablegs, kann auch keiner unbefugt darauf zugreifen. Zugriff erlangt man über deine Anwendung, die z.B. per Session prüft ob der Zugriff erlaubt ist und erst dann zur Bildanzeige durchschleust.
    "[URL="http://www.youtube.com/watch?v=yMAa_t9k2VA&feature=youtu.be&t=25s"]Mein Name ist Lohse, ich kaufe hier ein.[/URL]"

    Kommentar


    • #3
      [QUOTE=Flash01;781902]1.) Die Originalfotos in der Datenbank mittels Base64 speichern. somit wären die Fotos sicher von aussen und wenn die Datenbank gesichert wird, dann werden die Fotos mitgesichert. Nachteil: Die Datenbank wird sicher dadurch sehr langsam.[/quoute]

      Die wird nicht langsam, die wird nur groß.

      Zitat von Flash01 Beitrag anzeigen
      2.) Die Fotos auf ein Verzeichnis auf dem Webserver speichern und dieses dann mittels htaccess. sichern. Ich weiss halt nicht ob dies einen bessern Schutz darstellt und ob man mit php dann einfach die Bilde anzeigen / auslesen kann, wenn diese in einem geschützen Ordner liegen.
      Da PHP nicht über den Webserver, sondern über das Filesystem, zugreift, interessiert die .htaccess nicht.

      Kommentar


      • #4
        Dateien welche nicht direct über das Web erreichbar sein sollen, müssen auch nicht im Webroot liegen.

        Kommentar


        • #5
          Das heisst die Beste und Sicherste Variante wäre, wenn ich die Bilder in einem Ordner ausserhalb des Document Root ablege oder?
          Von aussen kommt man nicht rauf und ein User der schnüffelt bräuchte auch nicht stundenlang bei einem HtAccess herumprobieren um es zu knacken.

          Kommentar


          • #6
            i.d.r macht man das so, dass du eine download routine hast, der download schaut ob user das foto erworben hat, wenn ja, kriegt er ein download dialog mit dem bild.

            PHP-Code:
            <?php
            //schau ob user bild gekauft hat
            //hole pfad
            header('Content-Disposition: attachment; filename=bild.png');
            readfile($pfadZumBildAusserhalbVonDocumentRoot);
            apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]

            Kommentar


            • #7
              Zitat von Flash01 Beitrag anzeigen
              1.) Die Originalfotos in der Datenbank mittels Base64 speichern. somit wären die Fotos sicher von aussen und wenn die Datenbank gesichert wird, dann werden die Fotos mitgesichert. Nachteil: Die Datenbank wird sicher dadurch sehr langsam.

              2.) Die Fotos auf ein Verzeichnis auf dem Webserver speichern und dieses dann mittels htaccess. sichern. Ich weiss halt nicht ob dies einen bessern Schutz darstellt und ob man mit php dann einfach die Bilde anzeigen / auslesen kann, wenn diese in einem geschützen Ordner liegen.

              Wie würdet Ihr dieses Problem lösen?
              Lösung 3)
              Die Dateien verbleiben im Filesystem ausserhalb des Document root. Ein PHP Script regelt den Zugriff auf die Dateien (z.B. das nur ein angemeldeter Benutzer eine Datei herunterladen kann, die er auch bezahlt hat).
              Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

              Kommentar


              • #8
                Zitat von Flash01 Beitrag anzeigen
                Von aussen kommt man nicht rauf und ein User der schnüffelt bräuchte auch nicht stundenlang bei einem HtAccess herumprobieren um es zu knacken.
                .htaccess != basic authentication. Du kannst auch den Zugriff sperren. Das kommt auf das selbe hinaus wie ausserhalb des webroots.

                PHP-Code:
                deny from all 
                in eine .htaccess und diese in das entsprechende Verzeichnis.

                Kommentar


                • #9
                  Kommt auch drauf an was für ein DBS du benutzt.

                  Habe gute Erfahrung mit MongoDB + http://docs.mongodb.org/manual/core/gridfs/ gemacht.

                  Grüße
                  "Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]

                  Kommentar

                  Lädt...
                  X