Previous Chapter
Next Chapter
Table of Contents
Index

Introduction
   Changing the group and user id
   Adding a new virtual server
   Adding IP-less virtual servers
   Adding a Tetris server
   Configure the virtual server
   Deleting a virtual server
   Adding modules

Basic Configuration


Introduction

This chapter briefly describes how you can configure Roxen at its most basic level. We suggest you to read through these pages and try to make some changes. Don't concern yourself overly with details; the easiest way to learn is by making some changes on your own. Notice also that when entering something unsuitable Roxen will indicate this by displaying a message.

Changing the group and user id

The standard port used by the http protocol is port 80. All ports in the range 0 to 1023 is restricted and can only be administered by users with root privileges. However, one might not want to have the server running as root. Roxen can administrate all ports if it once has been started from root, regardless the present uid/gid.

We recommend you to change the User ID (uid) and Group ID(gid) of the server. To do this, unfold Change uid and gid under the Global variables menu, (see Figure 7.1).


Figure 7.1 Changing the Group and User id

The user and group id:s must be numerical values, which means that you cannot use symbolical values (for example www:www). The reason for this is that the change is made before any modules are called, i.e before Roxen is given the ability to resolve symbolic id:s.

The server has to be able to write log files and save configurations. In order to ensure this, do (as root and in the server/ directory):

chown -R «uid» ../ configurations ../logs

and possibly also:

chgrp -R «gid» ../ configurations ../logs

where uid and gid are the values you set above.

Another thing you might want to change is the configuration port which defaults to the one assigned by the install script. The reason for changing this is that it probably will be hard to remember to use a port numbered something like 18391. In order to change the port focus on Configuration interface. Focusing on this node will display the Ports node. When you focus on Ports the form shown in Figure 7.2 will be displayed.


Figure 7.2 Ports

The first field of this form is the actual port number, the second is the protocol used and the third is the interface to bind to. Notice that protocols other than http and ssl3 are not meaningful for the configuration interface.

Enter your values and press the Configure a new port button. Note though that your changes will not take effect unless you press the Save button that will be displayed at the bottom of the page.

Notice that you will have to change the URL to the configuration interface manually (i.e. from http://www.whatever.domain:oldport/ to http://www.whatever.domain:newport/), to be able to continue configuring. If you forget to change the configuration URL Roxen will protest.

Do not change the port unless you know for sure that the new port isn't busy. If this is the case Roxen will not be able to open the port, consequently you will have no chance of resolving the problem since you will have no configuration interface to connect to. The easiest way of resolving this problem is configure a supplementary port, see if it works and then delete the old port.

Adding a new virtual server

Roxen makes it possible to easily have any number of virtual servers, bound to different ports and/or different network interfaces. To add a new virtual server focus on the Virtual Servers tab on the configuration main page. Focusing on this tab will unfold an arrow list of all added servers as shown in Figure 7.3. If no server has been configured there will be no list. Press the New virtual server button here to move to the adding interface shown in Figure 7.4.


Figure 7.3 Virtual servers' list


Figure 7.4 Add a new virtual server

Enter the desired name for your server in the Server name field. In this example "What is in a name...?". As shown in the above figure you should also choose the configuration type. The configuration type determines which modules, if any, should be initially installed in the new virtual server. If another configuration type than Generic server is to be used, choose from the list of available configurations.

Roxen comes with the following virtual server configurations pre-defined:

Bare bones
This launches a virtual server without any modules installed. For text/plain operation a filesystem module is necessary. If support for else than simple text is wanted add a contents database module.

Copy of <Foo>
Makes a copy of the configuration of the virtual server named Foo. If you previously have configured one or more virtual servers you will be able to copy one of those configurations by choosing its name from the list of all possible configurations. This is useful, since you can use a virtual server without any open ports as a template to copy configurations from speeding up the adding process of future virtual servers.

FTP server
An FTP server, with a pre-configured FTP port. This configuration template adds the following modules:
  • Filesystem
  • User database and security
  • .htaccess support

Generic server
A virtual server with the most commonly used modules. This configuration template adds the following modules:
  • CGI executable support
  • Content types
  • ISMAP image-maps
  • Pike script support
  • .htaccess support
  • Main RXML parser
  • Directory parsing module
  • User database and security
  • User Filesystem
  • Filesystem
  • Graphics text

IPP Customer Server
A virtual server with the most basic modules. This configuration template adds the following modules:
  • Content types
  • ISMAP image-maps
  • Main RXML parser
  • Directory parsing module
  • Filesystem

Proxy server
A virtual server with all proxy server modules. This configuration template adds the following modules:
  • CONNECT method implementation
  • HTTP-Proxy
  • Gopher Gateway
  • FTP gateway
  • Content types
  • Wais Gateway

You can make template virtual servers, pre-configured virtual servers you simply copy the configuration from instead of going through the process of configuring with each and every virtual server you wish to add. Setup and configure a virtual server but don't open any ports. See Copy of on how the actual setup of the new virtual server is done.

Adding IP-less virtual servers

Sometimes you may want to assign several servers to the same IP and port. The "IP-Less virtual hosting"-module makes that possible. Simply add the module (as shown in Adding a module) to a server with a real listen port. Thereafter add the virtual servers you want running IP-less. Follow the same procedures as above but do not fill in any ports or IP:s for your IP-less server, but assign the server a uniq URL.

Adding a Tetris server

Add a new virtual server, choose Bare bones and when it comes to configuring listen ports choose the tetris protocol as shown in Figure 7.5.

Figure 7.5 Assign a port for tetris
How to play:
telnet «URL» «port»
j moves left
l moves right
k rotates
[space] dropes stone to the bottom
p pause the game
q quit the game

Good luck!

Configure the virtual server

When a new server has been added Roxen unfolds the nodes where there are variables that should be set or at least checked. Most of these variables should be correct by default. It is, however, a good idea to check them all, especially Filesystem, Server URL and Listen ports. Figure 7.6 shows the part of the configuration interface from where the PUT method and the Filesystem Search path is configured.


Figure 7.6 PUT method and File system search path configuration

To initially configure the Listen ports value press the Configure a new port button. Pressing this button will display the form shown in Figure 7.7.


Figure 7.7 Configure Listen ports

Since the listen port value determines what port the server will connect on its value must be unique. If a specific IP number is to be used either choose from the rightmost list or enter the name or IP-number in the field below. Chosing ANY means listen on all available IP-numbers for connection to the configured port, i.e. only one port with a specific number n per computer is possible. Also select desired protocol from the list next to the port number field. Once a port has been configured the listen port configuration interface will be shown instead when unfolding the Listen ports arrow.

When you have set the desired variables don't forget to press the Save button in order for the changes to take place.

Deleting a virtual server

To delete a virtual server, focus on the name of the virtual server and press the Delete this server tab at the bottom of the page.

Adding modules

The core part of Roxen loads and sets up the environment for the modules. Above the core, modules are added for all other functions. The modularity of Roxen allows modules to be upgraded on-the-fly, i.e. no reboot required.

In order to add a module to a virtual server press the Virtual Servers tab and then focus on the name of the server. As soon as you have done this you will see the Add module button at the bottom of the page, (see Figure 7.8).


Figure 7.8 Focusing on a server

Pressing the Add module button will display a list of all available modules. A module is selected by pressing the module name header. Each module adds its configurable parameters under the Virtual servers tab. Depending on module type, the parameters will show up under the Server variables arrow or directly under the module name arrow. For documentation on the modules shipped with Roxen, see the Modules chapter.

Previous Chapter
Next Chapter
Table of Contents
Index