Caudium HOWTO
Prev | Chapter 4. Creating your first server | Next

# 4.2. Starting

The first time you install Caudium from the sources, you will need to type the following commands:

    # su -
    # cd /usr/local/caudium
    # ./install

This script will allow you to give login information for the Configuration InterFace (CIF.), the web based configuration interface, and the port address for the CIF.. But if you want to start Caudium manually, you don't need to use install, just use the start script. This script will fork Caudium once and restart it automatically if it dies. A consequence is that if you kill start, the server will always be running but it will not restart if it dies.

There are many useful options to start. The first is `--help`. Here is a non-exhaustive list of options:

- `--once`: Do not fork Caudium and output debug to stdout (screen). If you hit CTRL-C, Caudium will be killed

- `-t`: Display all Pike calls

- `--gdb`: Run Caudium inside gdb, useful only for developers.

- `--with-threads`: Run Caudium with threads (run better on *BSD and Solaris)

- `--without-threads`: The opposite of `--with-threads`. It doesn't mean that the Pike scripts/modules aren't able to use threads. It merely means that the Caudium core server will not use threaded handler backend.

- `--with-keep-alive`: Enable keep-alive in HTTP. In the old days of the web, the HTTP protocol was simple but not efficient: one connection was made for each objects requested by a client. That means a web browser made 20 connections to the webserver if there was 19 images on a webpage and the HTML page itself. This result in a lot of overhead and response time delay. With keep alive, the server don't close the connection for each objects so the browser can request several objects with one HTTP connection and does not need to reconnect each time. As a result, the website seems to be faster for the client and the webserver can handle more users.

  | Currently, the keep-alive option doesn't work with CAMAS (I use CAMAS-1.1.7-DEV, Caudium 1.2RC1). Generally speaking, it is also not ready for production use. Here is a comment from Xavier Beaudouin: keep-alive is somewhat buggy on Caudium. My test shows that high number of connections on keep-alived Caudium show some random dropped returns. I do not recommend using keep-alive. If you'd like keep-alive a "black box" like redline seems the best solution... but expensive.

- `--config-dir=DIR`: Allows you to specify where your configuration files are, where "DIR" is the name of the directory holding the configuration files (typically `/usr/local/caudium/configurations/`). This is a very useful option. For example you can start several Caudium instances with different configurations by using different configuration directories. This is also useful if you put the configuration files in a non-standard directory: `/usr/local/caudium/server/start --config-dir=/home/david/etc/my_caudium_configuration/` For Apache users, this is the equivalent of the `-f` option but points to the directory that contains the files.

Finally, the most important thing is debug log files. These files are stored in `../logs/debug` (relative to `/usr/local/caudium/server` in our example). The current log file is named `default.1`. The log file from the last Caudium start is `default.2` and so on. If you didn't enable debug, these files are always used but contain very few messages.

| The location of files may be different on your system if you are using a prepackaged version of the software.

Prev | Home | Next
Installing Caudium from sources | Up | Stopping from command line