Zum Inhalt springen

[php] upload großer datei / internetverbindung


Empfohlene Beiträge

hi und hallo,

ich möchte kunden die möglichkeit geben große dateien via html formular auf unseren server hochzuladen.

dazu erstelle ich in meinem verzeichnis in dem sich meine upload.php befindet eine eigene ph.ini mit nachfolgenden werten, die dann auch richtig ausgelesen wird. das heisst, diese php.ini überschreibt die "root"-php.ini.


max_execution_time = 3660    

max_input_time = 3660	

memory_limit = 80M      

post_max_size = 80M

upload_max_filesize = 80M

session.gc_maxlifetime = 3600

ich habe die dateibegrenzung also mal auf 80 Megbyte hochgesetzt.

zum testen habe ich 2 verschiedene internetverbindungen.

V1 eine mit einer max uploadgeschwindigkeit von ca 100kByte/s

V2 und eine andere (die turbo ;) ) mit ca 1 Megabyte/s

-ich verwende zuerst V2 und wähle eine datei, die ca 50MB gross ist aus. der -upload erfolgt in ca 50 sekunden.

-alles ist ok, die datei liegt auf dem server.

-nun verwende ich V1.

-der upload läuft (browserstatusleiste "daten werden gesendet...") ca 5-8 minuten.

-der firefox bricht dann mit der meldung "das dokument enthält keine daten" ab.

-der IE bricht mit der standard "seite wurde nicht gefunden" fehlermeldung ab.

->>>für "kleine" dateien funktioniert auch mit V1 alles perfekt!

und nun natürlich meine fragen:

-was ist da los?

-was kann ich weiterhin tun?

-vergleich: wir haben einen partner, der selbst die möglichkeit bietet grosse uploads via html/php zu machen.

- dort kann ich mit beiden verbindungen und beiden browsern die selbe 50MB datei problemlos hochladen.

- leider hat dieser partner die php-anwendung selbst nicht geschrieben und ich bezweifle dass die softwarefirma die sie geschrieben hat den code bzw. trick rausgeben würde

ich bin für jede hilfe dankbar, denn wie man sich vorstellen kann ist das sehr zeit und nervenaufreiben jede einzelne neue änderung anhand des 50MB uploads mit der lnagsamen verbindung zu testen ;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Du kannst ja mal versuchen eine leere Ausgabe zu erzeugen (Leerzeichen, HTML-Kommentare). Wuerde mich mal interessieren, was dann passiert.

:confused: das hab ich leider nicht verstanden. wo genau soll ich ne leerausgabe machen? meinst du ich soll keine datei auswählen? oder keine uloadvorgang machen?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Davon mal abgesehen benutzt man für sowas ftp und nicht http :).

jo genau das wollte ich hören ;)

leider ist es nicht möglich, da unsere kunden in sachen ftp wirklich überhaupt nicht auskennen. viele davon sind unternehmen aus sozialen bereichen und die 80 jährige krankenschwester soll das system halt nunmal auch bedienen können.

es muss also genügen einen browser bedienen zu können. und so kommt nunmal nur http in frage

für konstruktive antworten bin ich wieterhin offen. ich lasee gerade "livehttpheaders" mitlaufen. komischerweise erzeugt das skript gar keinen output ;( es ist aber auch noch nicht fertig durchgelaufen bzw abgebrochen worden also hoffe ich dass das noch kommt

Link zu diesem Kommentar
Auf anderen Seiten teilen

versuch mal, mit der firefox-erweiterung "livehttpheaders" den HTTP POST request - sowie den folgenden response - mitzuschneiden; besonders die zeilen ab "Content-Type" wären interessant. vorzugsweise könntest du ja ASCII-dateien hochladen, um die analyse zu erleichtern.

s'Amstel

hi amstelchen. ich habs jetzt tatsächlich mit livehttpheaders versucht. das addon funktioniert offensichtlich einwandfrei, denn auf allen seiten vorher wird output erzeugt.

wenn ich dann auf meine upload.php seite bin und den upload vorgang starte wird gar kein output erzeugt.

dann bricht der browser wie vorher mit der fehlermeldung "dokument enthält keine daten" ab und es wird auch weiterhin kein output vom addon erzeugt ;(

haste ne idee?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Fuege mal vor dem kopieren der Datei (von temp. Verz. ins richtige) eine Ausgabe ein. Damit hast du einen Output (ggf. must du den noch flushen) und Headers.

nochmal kurz ne erklärung der vorgang:

- ich klicke in meiner navigation in der index php auf einen link "upload einer datei"

- dann öffnet sich die upload.php seite mit dem <form> zum versenden der datei

- dann klicke ich auf den "absenden" button.

- dann fängt der browser an zu arbeiten und die datei zu übertragen.

- dann is ende und es passiert nichts mehr, bzw. die "dokument enthält keine daten" meldung erscheint.

das heisst:

ich komme nie auf die seite die die datei entgegennimmt!

das bedeutet auch dass ich auch überhaupt nichts ausgeben bzw. kopieren kann ;(

Link zu diesem Kommentar
Auf anderen Seiten teilen

noch fragen meinerseits:

tritt der fehler auch auf, wenn du kleinere dateien uploadest, oder tritt der fehler generell auf?

hast du mal versucht, eine .txt-datei (mit, sagen wir, wenigen zeilen inhalt) raufzuladen?

erhältst du dann response-headers?

läuft dein PHP auf einer linuxmaschine (apache o.ä.) oder windows (IIS, apache win32)?

s'Amstel

Link zu diesem Kommentar
Auf anderen Seiten teilen

nein bei kleineren datei funktioniert alles (bis ca 12-15 Megabyte)

hab hier mal nen auszug, ka ob das der richtige ist. habe die XXX.bat hochgeladen:


-----------------------------301392466811527

Content-Disposition: form-data; name="theFile[]"; filename="XXX.bat"

Content-Type: application/octet-stream


XXX \\lucy3\-----------------------


-----------------------------301392466811527--


HTTP/1.x 200 OK

Date: Thu, 13 Apr 2006 14:08:59 GMT

Server: Apache/df-exts 1.2 (Unix) mod_ssl/2.8.22 OpenSSL/0.9.7d AuthPG/1.3 FrontPage/5.0.2.2635

Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0

Expires: Thu, 19 Nov 1981 08:52:00 GMT

Pragma: no-cache

X-Powered-By: PHP/4.4.1

Keep-Alive: timeout=15, max=100

Connection: Keep-Alive

Transfer-Encoding: chunked

Content-Type: text/html

Link zu diesem Kommentar
Auf anderen Seiten teilen

oh stimmt sorry


POST /FOLDER/FOLDER/content.php HTTP/1.1

Host: HOST

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de-DE; rv:1.7.12) Gecko/20050919 Firefox/1.0.7

Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5

Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3

Accept-Encoding: gzip,deflate

Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7

Keep-Alive: 300

Connection: keep-alive

Referer: http://DOMAIN.de/APP/FOLDER/content.php?editNew=1

Cookie: PHPSESSID=953d670fe887fea0ba6044c2427ae72e

Content-Type: multipart/form-data; boundary=---------------------------301392466811527

Content-Length: 2635

Link zu diesem Kommentar
Auf anderen Seiten teilen

Auch die erwähnte 80 Jährige Krankenschwester wird wenn sie in der Lage ist das Upload Formular zu benutzen in der Lage sein ihren Explorer aufzumachen..auf die vorgegebene Addresse gehen und die Datei ins Fenster ziehen können. Da brauchste nichtmal nen Ftpclient für.

Link zu diesem Kommentar
Auf anderen Seiten teilen

sorry aber was du hier absonderst ist der sache in keinster weise dienlich. ICH weiss schon wie man dateien via ftp hochlädt, wir möchten unseren kunden aber eine komfortable webanwendung á la "yousendit.com" bzw. wie in der print-branche üblich, schreiben die es ermöglicht sowohl absendername/adresse/ein ablaufdatum für downloads und noch vieles mehr mit einem klick zu ermöglichen.

dazu brauche ich nunmal einen html upload. dass es über umwegen noch ca 4 andere möglichkeiten gibt dessen bin ich mir bewusst, ich weiss aber auch dass es so geht und wollte gerne wissen was genau ich tun kann.

edit: mir fällt gerade auf dass ich die anwendung noch nie in vollem umfang beschrieben habe, also sorry für den forschen ton. bin nur etwas arg angefressen weil ich seit 1 woche nix anderes mache als stundenlang dazusitzen und an ini_set zu schrauben um dann zu sehen dass der upload wieder abbricht....

ich habe im zuge der probleme heute meinen provider angerufen. dieser sagte mir, dass es nur möglich maximal 25MB hochzuladen.

das stimmt so aber leider auch nicht, denn wenn ich unsere mega schnelle V2 internetverbindung nehme pumpe ich eine 50MB datei in 5 minuten hoch und alles funktioniert...

ich bin ein bisschen ratlos

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...