Schrift
[thread]666[/thread]

POST Daten verschwinden sporadich ?!?: werb weiss rat



<< |< 1 2 3 >| >> 24 Einträge, 3 Seiten
Gast Gast
 2006-02-05 03:02
#6845 #6845
Hallo,

ich habe folgendes System im Einsatz:
*Apache 2.0.55
*Perl mit CGI 1.15
*mod_perl 2.0

Für einen Teil der Geschäftslogik verwende ich mod_perl Skripte - für andere normale CGI Skripte. Bei den CGI Skripten habe ich jetzt das Problem dass mir sporadisch bei POST Aufrufen die POST Daten komplett verloren gehen. Dies passiert vielleicht im Verhältnis 1:30, ist aber antürlich trotzdem sehr störend. Viele derartige Berichte konnte ich im Netz auch von PHP Anwendern finden, alle allerdings ohne Lösungsansatz.

Weiss irgend jemand vielleicht wo hier der Hund begraben liegen könnte? Ich bin leider mit meinem Latein am Ende - v.a. auch wegen dem sporadischen, unvorhersagbaren Verhalten :-(

Gruss un Danke,
Peter
esskar
 2006-02-05 04:21
#6846 #6846
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
bist du dir sicher.
ist es wirklich ein post ?
hast du die content-length ?
wie genau macht es sich bemerkbar ?
renee
 2006-02-05 09:32
#6847 #6847
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Tritt das nur bei bestimmten Skripten auf oder passiert das bei allen??
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
peter_klein
 2006-02-05 12:35
#6848 #6848
User since
2006-02-05
8 Artikel
BenutzerIn
[default_avatar]
[quote=renee,05.02.2006, 08:32]Tritt das nur bei bestimmten Skripten auf oder passiert das bei allen??[/quote]
Hallo,

schon einmal danke für die Informationen.

Zunächst - nein es tritt nicht nur bei einem Skript auf sondern bei allen Perl Skripten und wie gesagt sehr unregelmässig. Ich kann einen Post Zugriff durchführen - das Skript dann 50x reloaden und beim 51sten mal sind keine Parameter da - beim 52sten ist wieder alles prima.

Die Content-length ist bei allen Aufrufen die gleiche - der Fehler tritt mit unterschiedlicher Clientsoftware auf.

Mein trivialer COde:
use CGI;
$query = new CGI;
$var1 = $query->param('var1');
$var2 = $query->param('var2');


die CGI Modul Version ist natürlich nicht 1.15 sondern 3.15 ...

Kann es sein dass hier irgendwechler Interferenzen mit dem mod_perl Modul statt finden?

Gruss,
Peter\n\n

<!--EDIT|peter_klein|1139135987-->
GwenDragon
 2006-02-05 14:16
#6849 #6849
User since
2005-01-17
14748 Artikel
Admin1
[Homepage]
user image
Code: (dl )
1
2
3
4
use CGI;
$query = new CGI;
$var1 = $query->param('var1');
$var2 = $query->param('var2');

Das gibt Probleme.

Sind deine Variablen auch alle schön vordefiniert?
Sind die Variablen auch wirklich lokal?
esskar
 2006-02-05 14:42
#6850 #6850
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
[quote=GwenDragon,05.02.2006, 13:16]
Code: (dl )
1
2
3
4
use CGI;
$query = new CGI;
$var1 = $query->param('var1');
$var2 = $query->param('var2');

Das gibt Probleme.

Sind deine Variablen auch alle schön vordefiniert?
Sind die Variablen auch wirklich lokal?[/quote]
okay, er benutzt kein use strict; aber eigentlich gibt es beim obigen code keine probleme
GwenDragon
 2006-02-05 16:00
#6851 #6851
User since
2005-01-17
14748 Artikel
Admin1
[Homepage]
user image
@esskar
Natürlich kann so ein kurzer Schnippsel keine Probleme machen.




@peter klein
1. Rufst du auch mal den CGI-Fehler ab?
Code: (dl )
my $error = $query->cgi_error;

Quote
Errors can occur while processing user input, particularly when processing uploaded files. When these errors occur, CGI will stop processing and return an empty parameter list. You can test for the existence and nature of errors using the cgi_error() function.
perldoc CGI


2. Ist $CGI::POST_MAX zu niedrig gesetzt?\n\n

<!--EDIT|GwenDragon|1139148820-->
peter_klein
 2006-02-06 13:16
#6852 #6852
User since
2006-02-05
8 Artikel
BenutzerIn
[default_avatar]
Hi,

danke für die Antworten. Der Fehler existiert weiterhin, allerdings weiter sehr sporadisch. Wie gesagt 30xReload des Forms und einmal dehlen die POST Daten.

Der cgi_error() ist auch bei den fehlerhaften Aufrufen undefined. Ein Verletzung der erlaubten POST Länge ist eigentlich auch unmöglich da nur zwei kurze Strings übergebn werden.

Gibt es sonst noch auf irgendeine Art Möglichkeiten zu prüfen ob POST Daten überhaupt ankommen?

Danke,
Peter
GwenDragon
 2006-02-06 15:58
#6853 #6853
User since
2005-01-17
14748 Artikel
Admin1
[Homepage]
user image
Quote
Wie gesagt 30xReload des Forms und einmal dehlen die POST Daten.
Wie machst du das Post? Über einen Browser? Über Perls POST-Skript?

Quote
Gibt es sonst noch auf irgendeine Art Möglichkeiten zu prüfen ob POST Daten überhaupt ankommen?
Bevor du ein new CGI machst, kannst du ja $ENV{CONTENT_LENGTH} auslesen. Darin steht die Länge des Geposteten.\n\n

<!--EDIT|GwenDragon|1139234450-->
peter_klein
 2006-02-06 16:17
#6854 #6854
User since
2006-02-05
8 Artikel
BenutzerIn
[default_avatar]
Der Post Aufruf erfolgt immer über den Browser - wobei der Fehler sowohl mit IE 6+ als auch Firefox auftritt.

Wie oben bereits beschrieben wird die Content_Length auch im Fehlerfall korrekt angegeben.
<< |< 1 2 3 >| >> 24 Einträge, 3 Seiten



View all threads created 2006-02-05 03:02.