2010-08-26 6 views
6

Unsere Website bietet ein Upload-Formular für unsere Mitglieder zum Hochladen von Fotos, die wir dann speichern und teilen können. Wir verwenden ein einfaches Formular POST, um den Upload zu aktivieren und dann die Dateien mit Perls CGI.pm zu verarbeiten. Hier ist unsere Apache-Setup:Upload Timeout Problem unter Apache/Perl

Apache/2.0.63 (Unix) mod_ssl/2.0.63 OpenSSL/0.9.8e-fips-rhel5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 

Aus irgendeinem Grund kleiner Prozentsatz unserer Nutzer laufen in ein Problem, bei dem die Upload-Zeiten und schlägt fehl. Hier ist, was in unseren Apache-Logs bei einem Fehler gemeldet wird:

(104)Connection reset by peer: Error reading request entity data, referer: http://domain.com/upload/photo 

Zuerst dachten wir, dass es auf Grund sein könnte, nicht die $ CGI mit :: POST_MAX zu niedrig eingestellt, so große Fotos abgelehnt wurden. Selbst nach Erhöhung auf 100 MB tritt es immer noch auf. Wir können das Problem nicht replizieren, und es scheint keinen Sinn oder Grund zu geben, auf welche Benutzer Probleme stoßen, da es in verschiedenen Browsern, Betriebssystemen, etc. passiert. Wir sind auch nicht sicher, ob es ein Problem ist Perl oder zu unseren Apache-Einstellungen.

Ich würde mich über Ratschläge beraten, was das Problem verursachen könnte, und Vorschläge zur Lösung des Problems. Vielen Dank im Voraus für Ihre Hilfe!

+0

Können Sie das Problem für denselben Benutzer konsistent replizieren, wenn dasselbe Bild hochgeladen wird? sind die Benutzer im Intranet oder Internet (was ich fahre ist, dass es nur ein Netzwerkproblem sein könnte) – DVK

+0

Es ist sehr häufig für den gleichen Benutzer wird versuchen, die gleiche Datei mehrere Male hochladen. Die Benutzer sind Internetnutzer. –

+0

@ RussellC. Konnten Sie dieses Problem lösen? Ich beschäftige mich momentan mit etwas ähnlichem und kann keine Lösung finden. – Alex

Antwort

0

Sie können versuchen, die "Timeout" -Einstellung in der Apache-Konfiguration zu erhöhen, falls es nur das Netzwerk mit Slowness-Spikes ist.

Auch sehen Sie bitte dieses: http://www.mail-archive.com/[email protected]/msg00457.html - dort könnte eine 64MB Grenze entsprechend dieser Pfosten sein, obwohl ich keine bestätigenden Beweise sehe.

Auch finden Sie in diesem Beispiel, wie man Grenzen gesetzt lesen: http://permalink.gmane.org/gmane.comp.apache.mod-perl/24260

+0

KeepAlive ist aktiviert, also dachte ich nicht, dass das ein Problem wäre. MaxKeepAliveRequests wird derzeit auf 100 gesetzt. Soll der Wert, den Sie vorschlagen, erhöht werden? Wenn nicht, was speziell bei Apache denken Sie, sollten wir erhöhen und wichtiger - warum? –

+0

Ich habe gerade festgestellt, dass die Timeout-Variable auf 200 gesetzt ist. Vielleicht haben Sie sich darauf bezogen. Ist das niedrig oder hoch? Was würdest du empfehlen, das zu ändern? –

+0

@russel - letzteres. Auszeit. Da dies Internetnutzer sind und Dateien groß sind, könnte 200 der Täter sein, aber nicht 100% sicher - versuchen Sie es zu wechseln, sagen Sie 400 und sehen Sie, ob eine durchschnittliche Anzahl von Fehlern über mehrere Tage abfällt – DVK

1

„Verbindung von Peer zurückgesetzt“ gibt oft die Benutzer warten gestoppt für das Hochladen durch Anschlagen Stopp- oder die Navigation weg zu vervollständigen.