Mailinglist Archive: opensuse-de (4127 mails)
| < Previous | Next > |
Mailman akzeptiert keine Updates / POST-Variable kommen nicht an.
- From: Michael Zimmermann <zim@xxxxxxxx>
- Date: Sun, 13 Jun 2004 12:20:51 +0200
- Message-id: <40CC2A83.4080008@xxxxxxxx>
Liebe Kollegen,
ich bitte um Tipps für die folgenden Problematik:
Unter SuSE 9.1 habe ich Mailman mit Apache2
und den RPMs von SuSE aufgesetzt. Alles Standard,
Alles up-to-date.
Wenn man aber nun über das HTML-Interface
( http://domain/mailman/admin/liste )
die Liste ändern will (z.B. einen Member löschen
oder neue eintragen), dann wird diese Änderung
ohne jede Fehlermeldung einfach ignoriert.
So als hätte man garnichts geändert.
Das ist kein Permission-Problem, denn die config.pck
der entsprechenden Liste wird prompt upgedatet.
Vielmehr bekommt das Python-Script keine POST-Variablen
geliefert und tut entsprechende so, als sei Nichts eingegeben.
Mit Testdisplays im Script sehen ich dann, dass
dem Script als REQUEST_METHOD ein "GET"
übergeben wird und deshalb verarbeitet cgi.FieldStorage
die POST-Variablen überhaupt nicht (wie das auch so
dokumentiert ist).
Der HTML Sourcecode hat aber richtig method="POST"
angegeben. Nur irgentwie scheint Apache daraus ein GET
zu machen. Der Fehler passiert übrigens unabhängig vom Browser.
Was läuft da in Pingu's Namen schief?
Google konnte mir da nicht weiter helfen,
in der SuSE SDB finde ich auch keinen Hinweis.
Habt Ihr Vorschläge, wo oder wie ich weiter suchen könnte?
Gruss
Michael
------------------------------------
Debug-Anweisungen in /usr/lib/mailman/Mailman/Cgi/admin.py
(Zeile 83, 84 und 87)
80 # Now that we know what list has been requested, all subsequent admin
81 # pages are shown in that list's preferred language.
82 i18n.set_language(mlist.preferred_language)
83 xxx = os.environ.get('REQUEST_METHOD')
84 syslog('error', 'admin.py REQUEST_METHOD : %s', xxx)
85 # If the user is not authenticated, we're done.
86 cgidata = cgi.FieldStorage(keep_blank_values=1)
87 syslog('error', 'admin.py cgidata : %s', cgidata)
ergeben dann im error-Log
Jun 13 14:11:58 2004 (10409) admin.py REQUEST_METHOD : GET
Jun 13 14:11:58 2004 (10409) admin.py cgidata : FieldStorage(None, None, [MiniFieldStorage('letter', 'z')])
d.h. also cgidata.keys() enthält nur die GET-Variablen (in diesem Fall
letter=z, weil die Member-Liste nach Buchstaben unterteilt wurde),
aber die jeweiligen Submit-Buttons und Felder des Formulars sind nicht gesetzt.
ich bitte um Tipps für die folgenden Problematik:
Unter SuSE 9.1 habe ich Mailman mit Apache2
und den RPMs von SuSE aufgesetzt. Alles Standard,
Alles up-to-date.
Wenn man aber nun über das HTML-Interface
( http://domain/mailman/admin/liste )
die Liste ändern will (z.B. einen Member löschen
oder neue eintragen), dann wird diese Änderung
ohne jede Fehlermeldung einfach ignoriert.
So als hätte man garnichts geändert.
Das ist kein Permission-Problem, denn die config.pck
der entsprechenden Liste wird prompt upgedatet.
Vielmehr bekommt das Python-Script keine POST-Variablen
geliefert und tut entsprechende so, als sei Nichts eingegeben.
Mit Testdisplays im Script sehen ich dann, dass
dem Script als REQUEST_METHOD ein "GET"
übergeben wird und deshalb verarbeitet cgi.FieldStorage
die POST-Variablen überhaupt nicht (wie das auch so
dokumentiert ist).
Der HTML Sourcecode hat aber richtig method="POST"
angegeben. Nur irgentwie scheint Apache daraus ein GET
zu machen. Der Fehler passiert übrigens unabhängig vom Browser.
Was läuft da in Pingu's Namen schief?
Google konnte mir da nicht weiter helfen,
in der SuSE SDB finde ich auch keinen Hinweis.
Habt Ihr Vorschläge, wo oder wie ich weiter suchen könnte?
Gruss
Michael
------------------------------------
Debug-Anweisungen in /usr/lib/mailman/Mailman/Cgi/admin.py
(Zeile 83, 84 und 87)
80 # Now that we know what list has been requested, all subsequent admin
81 # pages are shown in that list's preferred language.
82 i18n.set_language(mlist.preferred_language)
83 xxx = os.environ.get('REQUEST_METHOD')
84 syslog('error', 'admin.py REQUEST_METHOD : %s', xxx)
85 # If the user is not authenticated, we're done.
86 cgidata = cgi.FieldStorage(keep_blank_values=1)
87 syslog('error', 'admin.py cgidata : %s', cgidata)
ergeben dann im error-Log
Jun 13 14:11:58 2004 (10409) admin.py REQUEST_METHOD : GET
Jun 13 14:11:58 2004 (10409) admin.py cgidata : FieldStorage(None, None, [MiniFieldStorage('letter', 'z')])
d.h. also cgidata.keys() enthält nur die GET-Variablen (in diesem Fall
letter=z, weil die Member-Liste nach Buchstaben unterteilt wurde),
aber die jeweiligen Submit-Buttons und Felder des Formulars sind nicht gesetzt.
| < Previous | Next > |