However, if you are running you server on a VMS machine, a port of CGI/1.0 code does not yet (February 1994) exist for it, so you can only use this one.
httpd 2.15 or newer, old-style script
filenames must end with .pp suffix.
This allows the server to figure out the correct calling scheme. If
you are running older version of httpd where you only
have the old-style script interface, scripts should
not end in .pp.
The URLs referring to these scripts should never
contain the .pp suffix. This makes it easier to later
upgrade the script to CGI/1.0 without having to change the documents
referring to it.
.pp suffix. Nothing
else needs to be changed -- references to these files are still made
with URLs not ending in .pp, so all old
links still work.
/htbin/. The next pathname component is taken to be the
script name. Rest of the URL is passed to the script as the first
parameter.
HTBin directive:
HTBin /directory
Note: The Exec rule in version 2.15
obsolites the HTBin directive.
Examples:
/htbin/foo/x/y/z?name1=value1&name2=value2
is calles as:
/.../foo /x/y/z name1= value1 name2= value2
/htbin/foo?name1=value1&name2=value2
is calles as:
/.../foo '' name1= value1 name2= value2
Notice empty first parameter! Even if values contain blanks they are passed as a single parameter:
/htbin/favorite/music?band=Vaya+Con+Dios&song=Time+Flies
is called as:
/htbin/favorite /music band= 'Vaya Con Dios' song= 'Time Flies'
(Actually every parameter is always quoted, but the script programmer
never sees this because the shell has already stripped them away,
and I didn't have enough energy to write them everywhere.)
Content-Type: field, and after that there must
be an empty line indicating the end of the header section. After that
the actual document is output (in the corresponding format). Example:
Content-Type: text/html
<HEAD><TITLE>Example page</TITLE></HEAD>
<BODY>
...
</BODY>
Location: field with the actual URL:
Location: http://.../...
In this case everything else output by the script is ignored.
As the #label part of the URL is exclusively meant
to be used by the client, there is no way the server could handle it.
Therefore, if you need to specify #label after the URL, you
must use full URLs in Location: field, not the
redirection-on-fly feature.