IntroductionIntroduction
  InstallingInstalling
    <Windows>Windows<Windows>Windows
    <Unix>Unix<Unix>Unix
    <Starting the server>Starting the server<Starting the server>Starting the server
    <Directory structure>Directory structure<Directory structure>Directory structure
    <Standard server>Standard server<Standard server>Standard server
    <Secure server>Secure server<Secure server>Secure server
    <User's home pages>User's home pages<User's home pages>User's home pages
    <FTP server>FTP server<FTP server>FTP server
    <Proxy server>Proxy server<Proxy server>Proxy server
  HandlingHandling
  Virtual serversVirtual servers
  ModulesModules
  FilesystemsFilesystems
  RXML tagsRXML tags
  GraphicsGraphics
  ProxyProxy
  Miscellaneous modulesMiscellaneous modules
  Security considerationsSecurity considerations
  ScriptingScripting
  DatabasesDatabases
  LDAPLDAP
  IntraSeekIntraSeek
  LogViewLogView
  FrontPageFrontPage
  UpgradingUpgrading
  Third party extensionsThird party extensions
  PortabilityPortability
  Reporting bugsReporting bugs
  AppendixAppendix
 
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.