01-29-2005, 07:58 PM | #1 (permalink) |
Psycho
Location: Boston, MAss., USA
|
[Perl] CGI not rendering in Mozilla
Here's the deal;
I'm writing a website, and it has a CGI page that's rendered from a PERL script. Nothing fancy, a user clicks a few buttons on a form, hits submit, and the script reads the submission & provides responses based on the answers provided. The problem is: I wanted to double check the page against a variety of browsers, and when I ran it against a copy of Mozilla 1.6, instead of rendering the output as HTML, it asked what to do with the file (save it, etc..). There's no pre-set MIME type for files with .cgi extention, which is my first guess as to what's happening, but I wanted to double check that there's not some problem with Mozilla rendering CGI output as HTML, or that I need something special in the PERL script to "convince" the Mozilla borswers that what they're getting is html. Anyone have any thoughts? Thanks in advance.
__________________
I'm gonna be rich and famous, as soon I invent a device that lets you stab people in the face over the internet. |
01-30-2005, 10:59 AM | #2 (permalink) |
Tilted
Location: Boston
|
Your problems are several.
The first thing that a CGI script should send to the browser is a content type, followed by two newlines, eg: "Content-Type: text/html\n\n". When none is specified, IE defaults to 'text/html', whilst Mozilla defaults to 'text/plain'. Secondly, Mozilla is dead and buried, you should really be testing with Firefox. As an extra bonus, there's a heap of extremely useful web development tools for it. Thirdly, CGI has been dead and buried for several decades. For Perl web development you'll want to look at mod_perl, and while you are at it, look at a templating engine, or two. I'll leave it to others to recommend various HTML-embedded scripting languages, as I personally dislike them immensly. Lastly, it's 'Perl', not 'PERL' - stupid, I know, but it's the first thing you'll be told (in liue of a helpful answer) at any Perl related forum. |
01-30-2005, 09:45 PM | #3 (permalink) |
Insane
|
Forgive the threadjack, but I'd like to ask...
franz: If CGI is dead, and you dislike HTML-embedded languages, what would you use.. and why?
__________________
"You looked at me as if I was eating runny eggs in slow motion." - Gord Downie of The Tragically Hip |
01-31-2005, 12:42 AM | #4 (permalink) |
In Your Dreams
Location: City of Lights
|
I want to threadjack too..
How can CGI have been dead for several decades? The Web's only been around for one-one and a half. While CGI isn't as common anymore when we have PHP/ASP/etc, it still is out there quite a bit.. so I wouldn't be so quick to write it off. |
01-31-2005, 03:16 AM | #5 (permalink) |
Psycho
Location: Boston, MAss., USA
|
Ok, thanks for the help. The reason I'm testing with Mozilla (and I'm also going to test with Firefox), is the web logs indicate some use with Mozilla, so I want to make sure that all my bases are covered. As to why I'm doing it this way, well, I had some of the scripts already done, so it was easy to modify the existing scripts rather than re-invent the wheel.
And, yea, I know "Perl" is a retronym, but it was pretty late when I put up the original question. Thanks again.
__________________
I'm gonna be rich and famous, as soon I invent a device that lets you stab people in the face over the internet. |
02-06-2005, 06:50 PM | #6 (permalink) | |
Tilted
Location: Boston
|
Quote:
mod_perl kicks ass not just because of its speed - a huge increase you get pretty much for "free" when moving from CGI - but its tight integration with the Apache request pipeline gives great flexibility and an overall "fun" environment to work with. I've been learning a lot about various deployment strategies, and it's just nutty what you can do I've had some success with J2EE as well, it's not without its share of evils, but for large, complex projects it offers some nice benefits over the "scripting" style languages. I've done a bit of work with both PHP and ASP (like so many, I've started on them), and while they do succeed in keeping simple things simple (mostly), but as the projects grow they tend to fight your better instincts - doing The Right Thing just shouldn't be that difficult. I have less experience with ASP out of the two as MS tends to be an all-or-nothing proposition, and so far I've tended to err on the side of "nothing"; though I have heard that some of their more recent stuff is quite nice indeed. Hope that explains it better; I really don't want to start any "my language is better than your language" things, but I think the young un's should at least know more about what's out there. Oh, and despite what Paul Graham says, LISP sucks for web development (there goes "not starting anything" out the window ). |
|
02-06-2005, 06:58 PM | #7 (permalink) | |
Tilted
Location: Boston
|
Quote:
I should clarify that I was talking about Perl CGI being completely superceded by better Perl technologies (one of which I talk about below); C CGI certainly still has its place - niche as it may be - which it is unlikely to leave any time soon (mostly because it is so niche). So, since Perl has traditionally accounted for the vast majority of CGI development, and by now it is very difficult to come up with a valid reason to do new Perl web development with CGI, CGI is effectively dead and buried. Incidentally, "existing code-base" very rarely turns out to be a valid reason, especially with Perl |
|
Tags |
cgi, mozilla, perl, rendering |
|
|