Ankündigung

Einklappen
Keine Ankündigung bisher.

Downloadlink

Einklappen

Neue Werbung 2019

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

  • Downloadlink

    Hi,

    ich arbeite mal wieder an meinem Uploadservice (version 3.0). Nun möchte ich, dass man die Dateien nicht mehr direkt sondern über einen virtuellen Link aufruft (http://www.file-space.net/files/dateiname.jpg). Das funktioniert auch, es wird die datei getfile.php?file=dateiname.jpg aufgerufen. Jetzt das Problem...

    Ich möchte, dass man nicht sieht, wo die aufgerufene Datei liegt, also dass weiterhin files/dateiname.jpg angezeigt wird. Bei Dateien, die man runterladen muss ist das ja kein Problem, da kann man weiterleiten. Aber was mach ich mit Bildern? Wenn ich da weiterleite wird das Bild im Browser angezeigt und der Link zeigt sich...

    Schonmal danke für die Hilfe!
    iRadiaX
    Quedilo - Downloads schneller finden

  • #2
    was ist schlimm daran, wenn der user den Pfad sieht? setz doch per .htacess in dem Ordner
    Code:
    DENY FROM ALL
    ein. Ansonsten kann man imho den Dateinamen der gesendeten datei auch via header verändert. Oder ist das in der url das schlimme?
    Dann speichere alle dateien mit einer id in der Datenbank ab und übergib einfach an die getfile.php die id der datei.

    Kommentar


    • #3
      Das hab ich auch mal gesucht und sofort über Google gefunden.

      Kommentar


      • #4
        Aeh nee das passt irgendwie nicht ^^

        Nochmal ordentlich:

        Ich rufe http://www.file-space.net/files/dateiname.zip auf, die Datei wird sofort runtergeladen (durch weiterleitung auf die wirkliche Datei)

        Ich rufe http://www.file-space.net/files/dateiname.jpg auf, in der Adresszeile wird der richtige Dateiname, z.B. http://www.file-space.net/dateiordner/dateiname.jpg, angezeigt. Ich möchte aber, dass weiterhin http://www.file-space.net/files/dateiname.jpg angezeigt wird.
        Quedilo - Downloads schneller finden

        Kommentar


        • #5
          --> fopen, fread, fclose <-- damit die andere datei öffnen und den inhalt ausgeben. Am besten auch noch automatisch nen hübschen header dazu generieren.

          Nur is da die Frage nach dem Sinn -> warum willst du das ganze überhaupt?

          Und was hast du bisher gemacht? Zeig mal deinen Code

          Kommentar


          • #6
            Momentan siehts so aus (hab ne MySQL-Klasse geschrieben, die funktioniert auch einwandfrei):

            PHP-Code:
            <?php
                define
            ("IN_FILESPACE",true);
                
                include 
            "include/template_cls.php";
                include 
            "include/config_inc.php";
                include 
            "include/mysql_cls.php";
                include 
            "include/functions_inc.php";
                include 
            "include/general_inc.php";
                include 
            "include/counter_inc.php";
                
                
            // Datei herunterladen
                
            $check = new MySQL;
                
            $check -> query("SELECT f.file_id,s.http_url FROM files f, server s WHERE f.file_name = '".$_GET[file]."' AND s.server_id = f.server_id");
                if(
            $check -> rows() > 0)
                {
                    
            header("Location: ".$check -> record[http_url]."/".$_GET[file]);
                }
            ?>
            .htaccess:

            RewriteEngine On
            RewriteRule ^files/kill/(.*)/(.*)$ index.php?p=content/killfile&pw=$1&file=$2
            RewriteRule ^files/(.*)$ getfile.php?file=$1

            So... Das mit fopen, fread und fclose funktioniert nicht, weil ich den header ja ohne Dateiinformationen nicht generieren kann. Es kann ja auch mal vorkommen, dass jemand ne .gif-Datei hochlädt, die eigentlich ne JPG-Datei ist, da muss der header natürlich "Content-Type: image/jpeg" zurückgeben...Aber das geht ja nicht, weil man nicht weiß, was es für eine Datei ist.
            Quedilo - Downloads schneller finden

            Kommentar


            • #7
              Zitat von iRadiaX
              Aber das geht ja nicht, weil man nicht weiß, was es für eine Datei ist.
              mime_content_type()

              Kommentar


              • #8
                Und wie findet mime_content_type() den Dateityp?
                Quedilo - Downloads schneller finden

                Kommentar


                • #9
                  Mit getimagesize() kannst du den dateityp von bildern herausfinden.

                  U.u kannst du auch get_headers() probieren, aber ich bezweifele, dass das übers lokale dateisystem klappt.

                  Kommentar


                  • #10
                    Jo danke für eure Hilfe, das mit getimagesize() hat funktioniert!

                    MfG,
                    iRadiaX
                    Quedilo - Downloads schneller finden

                    Kommentar

                    Lädt...
                    X