diner - THE HTTP-server for the BeOS
Contents

diner ]
Introduction ]
What's new? ]
Installation ]
Configuration ]
Usage ]
Licence ]
Contact ]
Thanks ]
Features ]
Availability ]
AddOns ]
Restrictions ]
Known bugs and problems ]
Future ]
History ]

Configuration

This is a close description of the file diner_settings which normally should be located in /boot/home/config/settings/.
For more informations about the settings please also have a look into the documented example settingsfile.

  • LogFile <logfile>
    Where to send the logoutput to.

    ( e.g.: LogFile /boot/home/log/diner.log)

  • DontResolveHostnames
    This will tell diner to not resolve hostnames. It will speed things up if you have problems with your DNS services, but all connecting hosts will be known by there IP addresses only!

  • Port <port>
    This is the port on which diner should accept connections. You may define multiple ports to listen on.

    ( e.g.: Port 80)

  • MaxConnections <max>
    These are the maximum number of connections parallely processed.

    ( e.g.: MaxConnections 50)

  • HostName <name>
    Name of the host running diner. Used for redirects, if no Host:-line is provided by the client. If this is not present, the hostname of the machine is "guessed", which should work fine, too :-) So this entry in the config is only a fallback for rare cases.

    ( e.g.: HostName rappeldappel.ghb.fh-furtwangen.de)

  • Group <name> <filtername> <filterparam> ...
    There are several parameters in every connection which may change the behaviour of diner reacting to it. To simplify configuration, it is possible to group several of those to a group. These groups can then be used in the configuration later.

    ( e.g.: Group RappelDappel Host rappeldappel.ghb.fh-furtwangen.de)

    ( This one defines a group where all connections with the host-parameter set to rappeldappel.ghb.fh-furtwangen.de are added to.)

  • Remap <pattern> <result> [<keyword>] [Group <groupname>]
    If a path starts with <pattern>, this is replaced by <result>. The remapping will be applied only if the given group matches.

    ( e.g.: "Remap / /boot/HTML/" remaps any access to /boot/HTML/....)

    Please note that trailing / from incoming requests are stripped _before_ the mapping! So don`t map e.g. /test to /boot/HTML/test/. This will not work in most cases.

    A normal remapping will be performed silently by the server. If you set the keywords "permanent" or "temporary", the client will be informed that this page has moved either permanent or temporary to a different location.

    WARNING: Even if there is only ONE permanent or temporary mapping which applies to a path, the whole REMAPPED path will be send as new path.
    WARNING_2: Mappings are recursive, except if you are using one of the keywords "Permanent", "Temporary" or "Fixed".

    (E.g. If you have "Remap /xxx /boot/html/xxx" and "Remap / /boot/html/", the path /xxx gets remapped to /boot/html/boot/html/xxx, because BOTH remappings will be applied. If you set the "Fixed"-keyword for a rule, the remapping procedure will end if that rule is applied.)

    HINT: It`s legal to use a complete URL if permanent or temporary remapping is used. ( e.g.: "Remap / http://xxx permanent" will remap every access to a different system.

    All mappings will be applied from top down!

  • IndexFile <file>
    This specifies the files to search for if a path name is given.

    ( e.g.: IndexFile index.html)

  • AddOn <addon-name> MIMEType <mime-type>
    With AddOn, you specify which module should be called when the requested file is of the given mime-type. If no module is specified, the file is sent to the user as is, which is the normal operation.
    Currently there are two addons:
    "CGI" for normal CGI operation. The requested file is executed and the output from the file is sent to the user.

    "InlineModuleInvocation" is the module that is normaly used for text/html, if you want to make your web pages dynamic. Read the documentation for the InlineModuleInvocation for more details.

    ( e.g.: AddOn CGI MIMEType application/x-vnd.Stegemann-CGI
    In this case you have to set the mime-types of your CGI-scripts to "application/x-vnd.Stegemann-CGI".)

    WARNING: The CGI-script has to create a correct and complete HTTP-header!
  • Template <template-name> MIMEType <mime-type>
    With Template, you specify which file should be send when the requested file is of the given mime-type. If no template is specified, the requested file is sent.

    ( e.g.: Template /boot/home/www/templates/Person.html MIMEType application/x-person
    In this case, instead of people files the Person.html is sent. If Person.html is an HTML, it could be used to convert the people file on the fly into HTML.

  • OnError <error-file> These are the full-text errormessages to send on errors. These should be in HTML ( or CGI generating HTML) and they should not be too big. These paths are NOT remapped.

    ( e.g: OnError /boot/home/HTML/diner/error_default.html)

Copyright © 1997-99 Stegemann & Co., Inc., all rights reserved.
Created: November 29, 1997. Last modified: August 2, 1999.