Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Dateiupload von einem Server zum Anderen

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Dateiupload von einem Server zum Anderen

    Hey Leute,

    ich habe mal eine Frage bezüglich des Verhaltens von PHP in Sachen Fileupload.

    Nehmen wir an, wir haben folgendes Szenario...

    Auf Server1 liegt ein Formular mit einem "multipart/form-data" Verweis.
    Das Formular verweist nun per "action" auf "http://server2/upload.php".
    Da bei einem Fileupload die Datei pauschal, wenn vom Apachen erlaubt, in das tmp Verzeichnis geladen wird, ist nun meine Frage folgende:
    Wird die Datei auf Server2 hochgeladen und dann vom upload.php Script verarbeitet oder weist Server2 fremde _FILE Verbindungen ab?

    Bitte korrigiert mich wenn ich falsch liege

    Danke für jede Hilfe!


  • #2
    Dein Schema:
    Server 1 sendet dem Browser ein HTML-Formular.
    Der Browser zeigt dies an. Das Formular zeigt auf Server 2.

    PHP Technisch lief bis dahin: Server 1 generiere HTML-Formular ( wenn überhaupt )

    Sendet der User nun sein Formular, wird der Browser angewiesen ein POST ( oder GET ) -Action auf Server 2 durchzuführen.
    Server 1 bekommt davon nichts mit, da er dem Browser nur daten lieferte was er anzeigen soll.
    [URL="https://gitter.im/php-de/chat?utm_source=share-link&utm_medium=link&utm_campaign=share-link"]PHP.de Gitter.im Chat[/URL] - [URL="https://raindrop.io/user/32178"]Meine öffentlichen Bookmarks[/URL] ← Ich habe dir geholfen ? [B][URL="https://www.amazon.de/gp/wishlist/348FHGUZWTNL0"]Beschenk mich[/URL][/B].

    Kommentar


    • #3
      Ja, das Server1 davon nichts mitbekommt ist mir bewusst
      Es geht mir um die Frage, ob Server2 die Dateien abweist, da man ansonsten damit ja dann auch Server2 "vollmüllen" könnte!

      Grüße

      Kommentar


      • #4
        Was sind denn "fremde" _FILE Verbindungen? Ein Upload findet immer von "außerhalb" statt, der User sitzt ja immer an einem anderen Rechner.

        Wenn du mit "fremd" meinst, dass das Formular auf einem anderen Server liegt, dann ist das egal. Der Browser baut anhand des Formulars eine neue POST Abfrage zusammen und diese wird dann unabhängig davon wo das Formular aufgerufen wurde an die Zieladresse geschickt. Server 2 merkt also gar nicht welches Formular wirklich verwendet wurde, die POST Anfrage sieht in jedem Fall gleich aus. (Referer ist vlt. unterschiedlich, aber der ist ja optional)

        Kommentar


        • #5
          Kannst du Server 1, 2, 3 und 4 auch. Es ist nicht Aufgabe des Webservers eine beziehung zwischen HTML-Formular und POST-Daten zu gewährleisten.
          You know, my wife sometimes looks at me strangely. „Duncan“, she says, „there's more to life than Solaris“. Frankly, it's like she speaks another language. I mean, the words make sense individually, but put them together and it's complete nonsense.

          Kommentar


          • #6
            Ok, besten Dank.

            *edit: Kann man dann nicht pauschal einem Server ganz viele Uploads reinPOSTen? Die würde er im Normalfall doch sofort verwerfen, oder?

            Kommentar


            • #7
              Naja der Upload wird schon vollzogen, wenn das Uploadskript die Datei aber nicht weiter verarbeitet wird sie wieder gelöscht. Daher sollte bei jedem Formular und speziell bei Fileuploads ganz genau geprüft werden ob das was hochgeladen wurde wirklich auf "gewünschtem" Wege gekommen ist (z.b. checken ob der User eingeloggt war) und ob die Datei entsprechend der Uploadgröße/Filetype etc entspricht.

              Kommentar


              • #8
                Danke, das wird natürlich gemacht
                Habe es gerade mal von einer lokalen HTML Datei aus getestet und es funktioniert wunderbar
                Verwirft ein Apache die Datei eigentlich direkt nachdem das Script ausgeführt wurde oder hat er eine bestimmte Speicherzeit? (Standardmäßig)

                Grüße und besten Dank

                Kommentar


                • #9
                  Verflixt, sowas kann man aber auch mal selber nachlesen, bevor man für jeden Kleinkram fragt!

                  PHP: POST method uploads - Manual
                  The file will be deleted from the temporary directory at the end of the request if it has not been moved away or renamed.

                  Kommentar

                  Lädt...
                  X