Ankündigung

Einklappen
Keine Ankündigung bisher.

merkwürdige Idee - Dateiübergabe

Einklappen

Neue Werbung 2019

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

  • JBJHJM
    hat ein Thema erstellt merkwürdige Idee - Dateiübergabe.

    merkwürdige Idee - Dateiübergabe

    -nach den Richtlinien sollte es vielleicht doch ins Anfängerforum, andererseits ist es nicht unbedingt eine häufige oder allgemeine Frage...-

    Hallo,
    ich hatte mir gerade ein Tutorial über Bilder-Copyright-Schutz mit php angeguckt, bei dem das Bild durch eine php-Datei ausgegeben wird, also der Benutzer nicht direkt auf das Bild zugreift.

    Nun bin ich gerade dabei, ein Login-System zu erstellen.
    -Nur htaccess kommt nicht infrage, sieht unschön aus, ist "zu einfach".
    -Nur php schützt nicht vor direktem Aufruf von Dateien.
    -htaccess-Authentifikation per php ist umständlich, "wacklig" und man hantiert mit zu vielen Datenlisten
    ...
    alles irgendwie unpraktisch.
    Nun kam ich auf die Idee, das Prinzip des Bilderschutzes auf Dateien anzuwenden, also der Benutzer hat selber keine Zugriffsrechte auf die geschützten Dateien, über ein php-Skript kann er - nach Authentfizierung - dann aber doch auf die Dateien zuweisen.

    Glaubt ihr, so etwas ist möglich?
    Wäre wirklich eine interessante Alternative bei all den nervigen Login-Methoden...

    Gute Nacht wünscht
    Jannik

  • Flor1an
    antwortet
    Les einfach ein Tutorial dazu: Dateidownload realisieren

    Einen Kommentar schreiben:


  • JBJHJM
    antwortet
    Gibt jetzt leider doch ein Problem:
    exec/mimetype.php und die beiden Funktionen darunter finden den jeweils passenden Mimetyp. Funktioniert auch einwandfrei.
    Mit diesem Code (z.B. getfile.php?file=bild.jpg) hole ich die Datei.

    PHP-Code:
    <?php    
        
    if(!isset($_GET['file'])) {
            die(
    "No file defined");
        } else {
            
    $file "files/".$_GET['file'];
        }  
        if(!
    file_exists($file)) {
            die(
    "File does not exist");
        }
            include(
    "exec/mimetype.php");
            
    $filename basename($file); 
            
    $mime MimeTypeGetter::get($file);
            
    header("Content-Type: $mime"); 
            include(
    $file);
    ?>
    Aber es funktioniert nicht richtig. Direkt beim include() scheint es Probleme zu geben, viele Dateien werden einfach nicht richtig eingebunden. Nur 2 von versuchten 6 funktionieren - sehr erstaunlich. Konnte keinen Zusammenhang von Format oder Größe finden, die funktionierenden Dateien gehören allerdings zu den kleineren Dateien. Die Rechte sind für alle gleich gesetzt.

    Hat irgendjemand eine Idee worans liegen könnte?

    lg Jannik

    Einen Kommentar schreiben:


  • JBJHJM
    antwortet
    Zitat von Flor1an Beitrag anzeigen
    Wenn du ein bisschen hier im Forum suchst dann findest du dieses Thema zig mal. Ist nichts neues, wird alle 2 Wochen mal angesprochen. Du kannst beliebige Daten durch ein PHP Skript schleusen und entsprechend dann Sessions checken oder sowas.

    Zum anderen selbst wenn es ein eine nicht allgemeine oder seltene Frage ist, die Foren beziehen sich immer noch auf DEIN Wissen.

    Themenmoderation:
    [?] Verschoben von PHP-Fortgeschrittene
    Danke schön!
    Von eigentlich allen anderen Foren bin ich es halt gewohnt, dass im Anfängerforum die Standardfragen zum Synthax, Textverarbeitung etc. kommen, während speziellere Sachen dann halt ins Fortgeschrittenenforum bzw. sowas wie "Technikbereich" kommen.

    Und dann habe ich die Info erst gelesen, nachdem ich den Thread schon eröffnet habe. Schande über mich!


    Soviel dazu. Dann probier ichs mal, vielen Dank!

    Einen Kommentar schreiben:


  • Flor1an
    antwortet
    Wenn du ein bisschen hier im Forum suchst dann findest du dieses Thema zig mal. Ist nichts neues, wird alle 2 Wochen mal angesprochen. Du kannst beliebige Daten durch ein PHP Skript schleusen und entsprechend dann Sessions checken oder sowas.

    Zum anderen selbst wenn es ein eine nicht allgemeine oder seltene Frage ist, die Foren beziehen sich immer noch auf DEIN Wissen.

    Themenmoderation:
    [?] Verschoben von PHP-Fortgeschrittene

    Einen Kommentar schreiben:


  • gs93
    antwortet
    Da gilt das selbe Prinzip. Du musst nur drauf achten welchen Header du sendet. Sonst werden Bilder zum Download angeboten statt angezeigt^^
    MfG

    Einen Kommentar schreiben:


  • JBJHJM
    antwortet
    Das ist schon klar, aber es geht mir nicht (nur) um geschützte php-Dateien, sondern allgemein um Dateischutz, auch beispielsweise für ein zip-Archiv.
    Und da frage ich mich, ob es eine Möglichkeit gibt, den direkten Zugriff zu verweigern, stattdessen aber den indirekten Zugriff mit Hilfe von serverseitigen Code zu ermöglichen,
    konkret würde dies bedeuten, dass ich z.B. jbjhjm.com/getfile?archiv.zip eingebe, und mir das Script ermöglicht, (indirekt) auf z.B. die Datei jbjhjm.com/private/files/archiv.zip zuzugreifen, während ich die Datei direkt mit jbjhjm.com/private/files/archiv.zip nicht laden kann.
    Mit Bildern ist das möglich, da wird das Bild dann in eine Variable geladen, und dann (nach Authentifizierung) ausgegeben. Und da ist die Frage - gibts da für Dateien auch eine Lösung?

    Einen Kommentar schreiben:


  • Koala
    antwortet
    die geschützen php-Dateien außerhalb des Document-Root
    oder
    per htacces das Verzeichnis mit den geschützten Dateien schützen (deny from all)

    Da sowieso alles über eine einzige Datei läuft (index.php) welche die geschützten Dateien
    je nach GET/POST-Parameter includet bist Du so auf der sicheren Seite.

    Einen Kommentar schreiben:

Lädt...
X