Hallo ☺,
ich habe ein komisches Problem, mit einem Dateiuploadformular. Ich habe ein Lighttpd 1.4.35 Webserver auf einem Debian Jessie.
Installiert ist PHP 5.6.9-0+deb8u1 welches über mod_fastcgi an lighttpd angebunden ist.
Ich habe nun ein Webformular um eine Datei(PNG oder JPEG) hochzuladen, welches so aussieht:
1 2 | <form id="uploadFile" method="post" action="index.php?site=processFile" enctype="multipart/form-data"> Image: <input name="image" type="file"> |
Bearbeitet werden sollte das ganze dann von PHP in etwa so:
1 2 3 4 | switch ($_FILES['image']['type']) { case 'image/png': $img = @imagecreatefrompng($_FILES['image']['tmp_name']); |
Das funktioniert unter Windows mit verschiedenen Browsern auch sehr gut. Unter Linux erhalte ich allerdings keine Antwort beim Upload.
Als erstes habe ich in der lighttpd.conf die
debug.log-request-handling = "enable"
gesetzt und die Ausgabe überprüft. Bei einem Upload unter Windows kamen eine Menge Meldungen und es waren keine Fehler zu erkennen. Unter Linux produzierte derselbe Request überhaupt keine Logausgabe. Irgendwann bricht er einfach (vermutlich Timeout) ab. Es erfolgt keine Antwort. Als ich bei einem Testlauf mit Xdebug schauen wollte woran es hängt, ist er nichtmal bis zur ersten Zeile gesprungen. Anscheinend wird das Skript gar nicht erst aufgerufen, was wenigstens zu der fehlenden Logausgabe passen würde...
Hier einmal der Wireshark-Mitschnitt eines Linux und eines Windows Requests:
Windows:
Unter Linux sieht es so aus:
Bei verschiedenen Uploads hintereinander bricht er auch immer an derselben Stelle ab...
Wie man erkennt, sendet der Webserver keine Antwort zurück an den Webbrowser. Auffallend sind für mich die unterschiedlichen Content-Length-Felder. Aber ob dass das Problem ist...
Hat jemand eine Idee woran es liegen könnte?
Bearbeitet von jug:
Codeblock eingefügt. Bitte nutze die Formatierungsmöglichkeiten und die Beitragsvorschau, um deine Beiträge übersichtlich und gut lesbar zu gestalten. Danke.
Bearbeitet von pepre:
Kein Ubuntu, sondern Debian Jessie. Version angepasst.