When web server tasks that are too complex to do in RXML, or
take too much time to run as RXML, need to be carried out, there
are primarily two ways of doing this: writing scripts, or writing
extension modules for the server. (Writing extension modules for
the server is an advanced option, and not covered here. See the
System Developer Manual
for more information about writing Roxen modules.)
In the first few years of web server programming, scripts were
launched through by means of a mechanism known as
CGI (Common Gateway Interface), and this is still the most general and
basic form of using script. Since then, some scripting languages
have been given special support -- for the purpose of greater
flexibility and improved performance -- in several web servers. In
Roxen, there are primarily three scripting languages that have
this kind of special support: Pike,
Perl and Java.
Another scripting language is Javascript,
but it is different from most other scripting languages in use on the Web
in the sense that it is a client-side, not a server-side, language. Java
(which should not be confused with Javascript) is both a server-side and
a client-side language.