Introduction
  Installing
    Windows
    Unix
    Starting the server
    Directory structure
    Standard server
    Secure server
    User's home pages
    FTP server
    Proxy server
  Handling
  Virtual servers
  Modules
  Filesystems
  RXML tags
  Graphics
  Proxy
  Miscellaneous modules
  Security considerations
  Scripting
  Databases
  LDAP
  FrontPage
  Upgrading
  Third party extensions
  Portability
  Reporting bugs
  Appendix
 
Starting the server

On Unix, Challenger is started by the server/start script. The script is normally invoked without options since most configurations are done via the configuration interface. But in special cases options might be needed.

Making Challenger start automatically
The start script should be invoked by the system startup files so Challenger is started automatically in case the computer is restarted. How this is done depends on which operating system you use. Note that Challenger might get a different path and belong to different groups when started by the startup files as compared to when it is started manually. If you experience problems that Challenger or scripts run by Challenger has problems starting other program this is one common cause.

  • BSD
    Edit /etc/rc.local, and add
    (cd /path to Challenger/roxen/server/;./start)

  • SysV (e.g. Solaris, IRIX)
    Copy tools/init.d_roxen to /etc/init.d/roxen.
    cp tools/init.d_roxen /etc/init.d/roxen

    Make a symlink in /etc/rc3.d
    ln -s /etc/init.d/roxen /etc/rc3.d/S90roxen

  • DigitalUnix, HP-UX
    Copy tools/init.d_roxen to /sbin/init.d/roxen.
    cp tools/init.d_roxen /sbin/init.d/roxen

    Make a symlink in /sbin/rc3.d
    ln -s /sbin/init.d/roxen /sbin/rc3.d/S90roxen

  • Linux / RedHat
    Copy tools/init.d_roxen to /etc/rc.d/init.d/roxen
    cp tools/init.d_roxen /etc/rc.d/init.d/roxen

    Make a symlink in /etc/rc.d/rc3.d
    ln -s /etc/rc.d/init.d/roxen
    /etc/rc.d/rc3.d/S90roxen

In most cases you have to edit the copy of tools/init.d_roxen and update roxenhome to your path to Challenger.

Options to the start script

--version
Get only version information. Will not start Challenger.

--help
Get help. Will not start Challenger.

--log-dir=dir
Change the log directory. Defaults to logs/, or rather ../logs/ since the current directory is server/.

--config-dir=dir
Change the configuration directory. Defaults to configuration/, or rather ../configuration/ since the current directory is server/. Must be set to allow several Challenger servers to share the same files.

--with-threads
Run with threads if they are available.

--without-threads
Disable threads.

--with-profile
Enable runtime profiling of requests. The profiling information can be accessed through the action Development/Debug information for developers.

--with-file-profile
Enable runtime profiling of requests on a per file bases. The profiling information can be accessed through the action Development/Debug information for developers.

--with-keep-alive
Enable keep alive for the HTTP protocol module.

--once
Run the server once with the debug log sent to stderr.

--gdb
Run the server in gdb.

--program program
Start a different program with Challenger's Pike interpreter.

--with-debug
Enable debug mode.

--without-debug
Disable all debug modes.

--with-fd-debug
Enable file descriptor debugging.

--truss
(Solaris only). Run the server in truss showing all system calls.

--pid-file=file
Store the process id of the server and the start script in this file. Defaults to /tmp/roxen_$UID

Arguments passed to pike

-Dsymbol
Define the symbol symbol.

-dlevel
Set the runtime pike debug level. This only works if pike has been compiled with debug.

-ssize
Set the stack size.

-M path
Add the path to the pike module path.

-I path
Add the path to the pike include path.

-dt
Turn off tail recursion optimization.

-t
Turn on pike level tracing.

-tlevel
Turn on more verbose pike tracing. This only works if pike has been compiled with debug.

Environment Variables

ROXEN_ARGS
The contents of this environment argument will be treated as default arguments. Same syntax as the options.

ROXEN_CONFIGDIR
Same as --config-dir=dir.

ROXEN_PID_FILE
Same as --pid-file=file.

ROXEN_LANG
The default language for language related tags. Defaults to en for English.