Hallo,

ich habe hier einen Apache-Server laufen, auf dem Studenten Programmier-Aufgaben
einreichen, und diese dann automatisch kontrolliert werden. Ich verwende
hierzu eine Serie von html-Formen zusammen mit cgi-Skripten (in C++).
Ich habe nun von verschiedenen Seiten Widerspruechliches darueber gehoert,
ob es ein "Doppel-Klick"-Problem gibt oder nicht: Wenn ein Student zweimal
hintereinander schnell auf das Submit-Feld klickt, kann es dann passieren,
dass (unbeabsichtigt) die gleiche Form zweimal an den Server geschickt wird?!
Da die Anzahl der Einreichungen begrenzt ist pro Student, habe ich, um solche
Fehler auszuschalten, eine Sperre eingerichtet, so dass zu keinem Zeitpunkt
ein Student (identifiziert durch Studenten-Nummer) mehr als einen Prozess
laufen hat.

Beim Warten des Programm-Systems frage ich mich nun, ob dieses Problem nicht
vielleicht doch ein eingebildetes ist?! Ist es Aufgabe des Browsers, 
sicherzustellen,
dass wenn man einmal die Submit-Taste betaetigt hat, dass dann die Form inaktiv 
ist?!?!

In den Buechern, die ich zu html usw. habe, habe ich kein Wort darueber 
gefunden,
was denn wirklich passiert (bzw. passieren sollte), wenn man eine Form 
abschickt.

Eine damit verbundene Frage ist, wo ich denn am besten (unter Suse 8.0) die 
Zeile

RLimitNPROC 1 1

eintrage, die ja wohl obiges Problem in jedem Falle loest. (Ich verstehe dies 
hoffentlich
richtig, dass damit die Anzahl der Prozesse pro Klient beschraenkt wird?! In 
"Apache The
Definite Guide" (na ja) heisst es, dass damit die Anzahl der Prozesse pro 
"user" beschraenkt
wird --- welcher user ist denn damit gemeint?!)

Im allgemeinen traegt man derartige Direktiven wohl in

/etc/httpd/httpd.conf

ein, aber um die automatische Konfiguration von Suse nicht abzuschalten, darf 
man wohl
diese Datei nicht von Hand konfigurieren. Ist nun die richtige Methode die, in

/etc/sysconfig/apache

eine entsprechende Datei in die (noch leere) Liste

HTTPD_CONF_INCLUDE_FILES=""

einzutragen, wobei diese Datei dann die Zeile

RLimitNPROC 1 1

(plus etwaige andere Direktiven) enthaelt?!?!

Fuer Hinweise waer ich sehr dankbar!

Oliver


Antwort per Email an