apache2: bei POST manchmal abbruch!?
quartz
- webserver
Ich habe ein Problem mit apache2
Wenn ich ein Formular via POST-Methode abschicke erhalte ich danach die Default-Datei, also:
DirectoryIndex /cgi-bin/index.pl
Das ganze geschieht scheinbar nach dem Zufallsprinzip. Meistens klappts und das Formular wird abgeschickt. Aber manchmal, auch nicht und das liegt nicht am Script !
Hat jemand von euch eine Idee woran das liegen könnte bzw. in welche Richtung man hier ermitteln sollte? Bevor ich hier jetzt die ganze Konfig zeige will ich erstmal eine Fährte finden.
Hier ist der neue Zwischenstand:
Das Problem tritt immer bei der POST Methode auf. Manchmal, wie per Zufall, verliert der Request alle Parameter!
Dann habe ich mal recherchiert und einen weiteren Leidensgenossen gefunden:
http://www.hilpers.com/831884-verlorener-wert-bei-multipart-form
Bei mir geschieht exakt dasselbe.
Das Problem ist blos, dass es enorm schwierig ist die Fehlerquelle einzuschränken da ich nichtmal weiss obs am Browser oder Server liegt.
Das Problem tritt auch bei POST-Requests auf, die NICHT multipart/form-data sind. Allerdings kann ich absolut kein Muster erkennen. Ich muss die Tests teilweise 100 mal abschicken bis dann das Phenomen auftritt. Manchmal kommts auch aber ganz schnell.
Nun bin ich auf die Idee gekommen mir mal den Fehler ausgeben zu lassen und habe dabei etwas komisches beobachtet:
Im /var/log/apache2/access_log konnte ich beobachten, dass der Statuscode "200" auftritt, der Apache also meint es sei alles in Ordnung.
Das Script sagt allerdings: "400 Bad request (malformed multipart POST)"
Stellt sich mir eine neue Frage: Warum verschweigt mir der Apache diesen Fehler?
Hi,
Im /var/log/apache2/access_log konnte ich beobachten, dass der Statuscode "200" auftritt, der Apache also meint es sei alles in Ordnung.
Das Script sagt allerdings: "400 Bad request (malformed multipart POST)"
Was genau heisst "das Script sagt"?
Gibt es lediglich diesen Fehler*text* aus - oder auch einen entsprechenden HTTP Statuscode?
Stellt sich mir eine neue Frage: Warum verschweigt mir der Apache diesen Fehler?
Wenn das Script sich "normal" beendet, und ausser einer Text-Fehlermeldung nicht zu erkennen gibt, dass etwas falsch lief - dann ist und bleibt das für den Apachen ein 200 Oh-Hoho-Kay.
MfG ChrisB
Was genau heisst "das Script sagt"?
Die Fehlermeldung stammt von CGI::cgi_error ist also ziemlich zuverlässig.
Ich konnte mittlerweile feststellen, dass sich scheinbar der Inhalt von POST löscht. Allerdings weiss ich nicht WANN! Ich kann nicht sagen ob die Löschung der Parameter durch den Firefox ausgelöst wird oder ob der Apache2 eine Macke hat.
ALSO, neuster Stand: Es funktioniert fehlerfrei wenn ich ModPerl deaktiviere!
Es scheint also ganz klar einen Konflikt zwischen ModPerl und POST zu geben. Kann es sein, dass das etwas mit meiner Umstellung auf UTF-8 zu tun hat?