CGI scripting support
Fast CGI scripting support
Pike script support
CGI scripting support
Support for the CGI/1.1 interface, and more.
- Allow symlinks
- If set, allows symbolic links to binaries owned by the directory owner. Other symlinks are still disabled.
NOTE: This option only has effect if scripts are run as owner.
- Provide the <cgi> and <runcgi> tags
- If set, the <cgi> and <runcgi> tags will be available.
- Log file
- Where to log errors from CGI scripts. You can also choose to send the errors to the browser or to the main Roxen log file. Some substitutions of the file name will be done to allow automatic rotating:%y Year (i.e. '1997')
%m Month (i.e. '08')
%d Date (i.e. '10' for the tenth)
%h Hour (i.e. '00')
- Send decoded password
- If set, the variable REMOTE_PASSWORD will be set to the decoded password value.
- Limits: Core dump size
- The maximum size of a core-dump, in 512 byte blocks. -2 is unlimited.
- Limits: Memory size
- The maximum size of the memory used, in Kb. -2 is unlimited.
- Pass environment variables
- If this is set, all environment variables roxen has will be passed to CGI scripts, not only those defined in the CGI/1.1 standard. This includes PATH. (For a quick test, try this script with and without this variable set:#!/bin/sh
echo Content-type: text/plain
- Handle *.cgi
- Also handle all '.cgi' files as CGI-scripts, as well as files in the cgi-bin directory. This emulates the behaviour of the Apache server (the extensions to handle can be set in the CGI-script extensions variable).
- CGI-script extensions
- All files ending with these extensions, will be parsed as CGI-scripts.
- Extra environment variables
- Extra variables to be sent to the script, format:NAME=value
Please note that normal CGI variables will override these.
- Limits: Maximum file size
- The maximum size of any file created, in 512 byte blocks. -2 is unlimited.
- Limits: Time before killing scripts
- The maximum real time the script might run in minutes before it's killed. 0 means unlimited.
- CGI-bin path
- This is where the module will be inserted in the namespace of your server. The module will, per default, also service one or more extensions, from anywhere in the namespace.
- Allow listing of cgi-bin directory
- If set, the users can get a listing of all files in the CGI-bin directory.
- Limits: Maximum CPU time
- The maximum CPU time the script might use in seconds. -2 is unlimited.
- Limits: Nice value
- The nice level to use when running scripts. 20 is nicest, and 0 is the most aggressive available to normal users. Defining the Nice value to anyting but 0 will override the 'Priority' setting.
- Treat non-executable files as ordinary files
- If this flag is set, non-executable files will be returned as normal files to the client. Otherwise an error message will be returned.
- Limits: Maximum number of open files
- The maximum number of files the script can keep open at any time. It is not possible to set this value over the system maximum. On most systems, there is no limit, but some unix systems still have a static filetable (Linux and *BSD, basically).
- Limits: Priority
- The priority, in somewhat general terms (for portability, this works on all operating systems). 'realtime' is not recommended for CGI scripts. On most operating systems, a process with this priority can monopolize the CPU and IO resources, even preemtping the kernel in some cases.
- Raw user info
- If set, the raw, unparsed, user info will be sent to the script, in the HTTP_AUTHORIZATION environment variable. This is not recommended, but some scripts need it. Please note that this will give the scripts access to the password used.
- Run scripts as
- If you start roxen as root, and this variable is set, CGI scripts will be run as this user. You can use either the user name or the UID. Note however, that if you don't have a working user database enabled, only UID's will work correctly. If unset, scripts will be run as nobody.
- Parse RXML in CGI-scripts
- If this is set, the output from CGI-scripts handled by this module will be RXMl parsed. NOTE: No data will be returned to the client until the CGI-script is fully parsed.
- Search path
- This is where the module will find the CGI scripts in the real file system.
- Set the supplementary group access list
- If set, the supplementary group access list will be set for the CGI scripts. This can slow down CGI-scripts significantly if you are using eg NIS+. If not set, the supplementary group access list will be cleared.
- Limits: Stack size
- The maximum size of the stack used, in kilobytes. -2 is unlimited.
- Log CGI errors to...
- By changing this variable you can select where error messages (which means all text written to stderr) from CGI scripts should be sent. By default they will be written to the main log file - logs/debug/[name-of-configdir].1. You can also choose to send the error messages to a special log file or to the browser.
- Run user scripts as owner
- If set, scripts in the home-dirs of users will be run as the user. This overrides the Run scripts as variable.
- Warn for CGIs executing as root
- If this flag is set, a warning will be issued to the event and debug log when a script is run as the root user. This will only happend if the 'Run scripts as' variable is set to root (or 0)