Cheatah: Download im CGI-Kontext: Probleme mit unterschiedlichen Browsern

Beitrag lesen

Hi,

print "content-type: application/octet-stream\n";

schreib bitt mindestens "Content" groß.

print "location: ../software/spring.zip\n\n";

Dieser Header _muss_ (in Worten: MUSS) eine absolute URL beinhalten, beginnend beim Protokoll. Schreib bitte "Location" groß.

print "content-disposition: filename=../software/spring.zip\n\n";

"Content-disposition: attachment; filename=spring.zip"

Der Filename _muss_ (in Worten: MUSS) ein Dateiname sein und darf _keine_ Pfadinformation o.ä. beinhalten. Zweck des ganzen ist, dass in einem Speicher-Dialog innerhalb eines Verzeichnisses das als Dateiname (vor-) gewählt wird, was Du vorschlägst - und ich habe noch nie einen Dateinamen "../software/spring.zip" gesehen. Bedenke bitte auch, dass der "/" nicht in allen Filesystemen der Verzeichnistrenner ist; unter MacOS ist es beispielsweise der ":".

Netscape und Konqueror legen die Datei unter ihrem richtigen Namen ab. MS IE ignoriert leider völlig die content-disposition und will die Datei unter dem Namen des Skripts ablegen - ganz dumme Idee.

Wenn der Scriptname auf ".pl" endet und auf dem System mit dem IE Perl installiert ist, versucht er, die Scriptausgabe in den Perl-Interpreter zu jagen - _ganz_ ganz dumme Idee. Andererseits: Der IE hat bereits Probleme mit korrektem HTTP; erwarte bitte nicht, dass er sich bei falschem HTTP richtig verhält.

Cheatah

--
X-Will-Answer-Email: No
X-Please-Search-Archive-First: Absolutely Yes