Mail Archives: djgpp/1999/10/11/23:03:15
"S. M. Halloran" wrote:
>
> >
> > Been using djgpp for a little while now on windows nt.
> > Today I decided to try to write a CGI application to use via
> > Windows NT's Peer web service's web server. The code ( fairly
> > simplistic, included below ). I get an error when I try to run
> > it, claiming that the application didn't return the proper http
> > headers, it then includes nothing as the error.
> > I compiled the same code under Visual C++ on my work PC, and
> > it runs fine... what gives ?
> >
> > I couldn't find any references to CGI or problems related to it
> > in the DJGPP FAQ.
> >
> > TIA !
> >
> >
> > - Bub
> >
> > /*----------- foo.c --------------------
> > cgi app that prints blah blah in red
> > */
> >
> > #include <stdio.h>
> >
> > int
> > main(int argc, char **argv)
> > {
> > fprintf(stdout,"Content-Type: text/html\n\n");
> ^^^^^
> Try this: "Content-Type: text/html\r\n\r\n"
> Read the RFCs on HTTP 1.0 and 1.1 so that you understand why.
>
> You should also be aware of your server's capabilities. The server must lead
> the response to the client with a 3-digit code and an optional message,
> followed by valid HTTP headers, and then the message body. If your CGI app is
> expected to supply all headers and the server merely transfers the output, you
> may have to supply an entire response that conforms with HTTP. If so, then
> know the spec.
>
> The Visual C++ compiler may be translating the '\n' as '\r\n' for you. Try
> this: instead of stdout, save to a file the DJGPP- and Visual C++ output and
> look at it with a binary editor (such as MS-DOS Edit with the 'open binary'
> checked).
The main problem is that most of Windows HTTP-servers could not execute
DOS-based CGIs. DJGPP is not an environment that can be used for CGI
programming under Windows. Use CygWin instead.
--
Sincerely yours,
Alexander Bokovoy
<!-- 2:450/144.58 --- bokovoyATminsk.lug.net --- FractalsAtTheEdge -->
- Raw text -