Download to client from a cgi script?

  • Thread starter =?ISO-8859-1?Q?=D8ystein_Johansen?=
  • Start date
?

=?ISO-8859-1?Q?=D8ystein_Johansen?=

Hi,

(This question may be stupid, but I just can't find the answer...)

How can I make the browser downlaod a cgi script from /cgi-bin/.
Obviously I can't make a link to it with <a=href="/cgi-bin/script.cgi>,
since tha script will be executed then.

I see how Lutz in PP2E prints the script on the screen, but I want the
user to get the "save file" message box?

Same thing. What about a binary file? Printing a binary file with
getfile.cgi from PP2E is just silly. The surfer must be promped to save.
So, what I want is a script like getfile.cgi, that downloads insted of
prints the file.


(Maybe this is more a HTTP/HTML question than a Python question...)

Clueless,
-Øystein
 
M

Matthew Wilson

If you want to trigger the browser to ask 'save this file?' then you
gotta pass it a Content-Type that will trigger that.

At the top of your cgi script, get rid of 'Content-Type: text/html\n\n'
and replace it with 'Content-Type: application/octet-stream' or
something like that.

This page:

http://ppewww.ph.gla.ac.uk/~flavell/www/content-type.html

describes some IE bugs. Good luck! If you figure it all out, can you
post a message back here for future reference?
 
J

John J. Lee

Øystein Johansen said:
How can I make the browser downlaod a cgi script from
/cgi-bin/. Obviously I can't make a link to it with
<a=href="/cgi-bin/script.cgi>, since tha script will be executed then.

I see how Lutz in PP2E prints the script on the screen, but I want the
user to get the "save file" message box?

Don't put it in the cgi-bin? There will be other ways, too, all of
which are entirely dependent on your web server and its configuration.
Anything regarded by your server as a cgi-script *shouldn't* be
downloadable, because that would risk security problems. Some servers
will always regard anything ending in ".cgi" or ".py" or whatever as
CGI scripts, some will regard anything in a particular directory as
CGI scripts, some will do other things.

Same thing. What about a binary file? Printing a binary file with
getfile.cgi from PP2E is just silly. The surfer must be promped to
save. So, what I want is a script like getfile.cgi, that downloads
insted of prints the file.

I don't understand any of this paragraph.

(Maybe this is more a HTTP/HTML question than a Python question...)

None of the above: entirely a web server question.


John
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
474,164
Messages
2,570,898
Members
47,439
Latest member
shasuze

Latest Threads

Top