in reply to Re^2: making dynamic web pages
in thread making dynamic web pages

Is there any other protocol available on webserver to deal with webpages for dynamic content other than CGI ?
No! Not for static content either!

CGI "Common Gateway Interface" is the protocol of how browsers talk to web servers.

Can I define and use a different proprietary protocol between a client and a server? You betcha! Happens all the time. But this server won't be able to talk to clients on the web.

Does CGI protocol vary for different web servers? No. Microsoft has their .aspx pages. And there are lots of complications of talking to a web server like that, but this is all done via CGI, "Common Gateway Interface".

To read more about Microsoft pages: http://msdn.microsoft.com/en-us/library/ms972976.aspx. What happens with pages like this is that they send a whole lot of data identified as "View_state" and other things. As a browser, you have to send this back via POST. This all happens via the CGI protocol. The difference is only what you receive and what you need to send back + your additional information in the POST.

Replies are listed 'Best First'.
Re^4: making dynamic web pages
by afoken (Chancellor) on Dec 21, 2009 at 20:59 UTC

    I don't know if there is a misunderstanding, but your posting is awfully wrong:

    • There are lots of other protocols for dynamically generated HTTP resources. CGI is one of the oldest and still one of the most common ones. But then there is FastCGI, a lot of native APIs like Apaches mod_perl or mod_php, NSAPI. And Java also has a few APIs hidden between the buzzwords.
    • CGI is the protocol between the web server and some other application on the server side. CGI is never spoken between browser and web server.
    • ASPX and many other solutions are not done via CGI, they use propritary interfaces or one of the APIs above.

    Alexander

    --
    Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so". ;-)
Re^4: making dynamic web pages
by Anonymous Monk on Dec 21, 2009 at 21:03 UTC
    That is a common misunderstanding.
    The Common Gateway Interface (CGI) is a simple interface for running external programs, software or gateways under an information server in a platform-independent manner. Currently, the supported information servers are HTTP servers.
    http://tools.ietf.org/html/rfc3875
      I am gonna give up on this "legalese" and end by quoting Lincoln Stein: "The Common Gateway Interface, or CGI, is a standard for allowing external programs to interface with servers such as HTTP servers, database servers, e-mail servers, and so on.". This is the way that web things talk to other web things.
        I am gonna give up on this "legalese" and end by quoting Lincoln Stein: "The Common Gateway Interface, or CGI, is a standard for allowing external programs to interface with servers such as HTTP servers, database servers, e-mail servers, and so on.".

        Have you read that quote? Because that is the exact thing I had quoted for you.