CGI and SSI
CGI, common gateway interface, and SSI, server side includes, are two
standards for running scripts by a web server, that work with with
practically any web server. Challenger support CGI with the
CGI executable support module and SSI with the
Main RXML Parser module.
The good thing about CGI programming is that it works with any web
server. Unfortunately this is the only good thing about CGI and SSI.
For each request to a CGI script a program has to be run, something
rather costly of performance. CGI is not particularly easy to program;
many complexities of web application programming must be handled by
the CGI programmer. Nor are the security issues handled, the
programmer has to take care about them herself.
Many of these shortcomings are however handled by languages and
programming environments that use CGI to access the web server. With a
good library CGI programming can become easy for the programmer. It is
however recommended to check how the library, language or environment
handles the security implications of web application programming, and
what the programmer needs to worry about.
Challenger makes it possible to integrate CGI programming with
RXML. It is possible to embed calls to CGI scripts within RXML pages
by using SSI or the <cgi> tag. It is also possible for the
RXML parser post process output from CGI scripts. That way a CGI
script can make use of functionality from Challenger modules.
SSI or the <cgi> tag can be used together with the
<define> tag to create new RXML tags that are handled via CGI