Filesystem modules
Filesystem modules are mounted on Challenger's virtual filesystem and
handle requests for files and directories. This is usually done
through fetching files from a directory on the host computer. But
there are modules that fetch files from a CVS repository or another
Challenger server.
Filesystem
The Filesystem module is the most basic filesystem
module and it simply fetches files from a directory on the host
computer.
- Handle DELETE
-
If set, the DELETE method can be used
to delete files in the file system. This is most useful if the FTP
protocol is used.
- Handle PUT
-
If set, PUT can be used to upload files to
the file system.
- Mount Point
-
Where the module will be mounted on the
virtual filesystem.
- Require authentication for modification
-
Only allows
authenticated users to use methods other than GET and POST.
Turning this option off makes it possible for anyone
accessing the web site to edit pages.
- Search Path
-
From which directory on the host computer
the files will be fetched.
User Filesystem
Makes it possible to access files in the user's home directories. All
home directories containing a directory whose name is specified in the
Public directory variable will be accessible.
The User Filesystem module needs an authentication
module that can provide it with information about the users, such as
where their home directory is located. The User database and
security is such an authentication module.
- Banish list
-
This is a comma-separated list of users,
that should not have any home page.
- Look in users homedir
-
If set, the user's files are
looked for in the home directory of the user, according to the
Public directory variable. Otherwise, the Search
path variable is used to find a directory with the same name as
the user.
- Only owned files
-
If set, only those files that a user
really owns can be sent. This makes it impossible for a user to
publish sensitive information by making a symlink from her home page
directory.
- Password users only
-
Only users possessing a valid
password on the system are allowed to have public directories.
- Public directory
-
This is the location of the home
page directory. Assume that it is set to .public, that the
module has the mount point /users/ and that Per's home
directory is /home/per. Now, when the file
/users/per/foo/ is accessed the module will try to find the
file or directory /home/per/.public/foo/.
- Virtual User Hosting
-
If set, virtual user hosting is
enabled. This means that the module will look at the host
header to determine which user's directory to access. If this is set,
you access the user's directory with http://user.domain.com/ instead
of http://user.domain.com/user/. To set this up you need to add CNAME
entries to DNS for all your users pointing to the IP addresses of this
virtual server.
CVS File system
This module can access files under CVS, Concurrent Versions System,
control. It has options to retrieve differences between two versions,
older versions and many other CVS tricks. You need to have CVS
installed to use this module.
- CVS (sub)module
-
There are two ways to specify which
directory tree in the repository is to be mounted:
module/subdirectory
Where module is a module defined in the CVS repository, and
subdirectory is a (possibly empty) path to a subdirectory of the
module.
/path
Where path is the full path to a directory, starting at the CVS
root. I.e., the module database in the CVS repository is not used.
- CVS repository
-
Where CVS stores its files.
- Mount point
-
This is where the module will be inserted
in the name space of your server.
- Path for locating binaries
-
Colon separated list of
directories to search for the cvs and rcs
binaries.
Restricted File system
A restricted file system that makes it possible to mount each user's
home directory on the same URL. The file system will prompt the user
for her login name and password, and then only show her files. The
most common application for this is for uploading content with FTP.
- Hide path to the home-directory
-
Hides the path to the
home directory if enabled.
For example, if the user foo has the home directory
/home/foo and this is enabled, he will see his files in
/.
If this is not enabled, he would see them in /home/foo.
Secure File System
The secure file system module works much like the ordinary file system
module, but with regular expression based access control. It is also
possible to do the authentication via a form.
- Security patterns
-
This is a list with entries on the
form filepattern: security level=pattern. Each entry must
be in one of the forms listed below.
filepattern: allow ip=pattern
filepattern: deny ip=pattern
filepattern: allow user=pattern
In patterns, * matches one or more characters and
? matches one single character. Please note that the
expressions are tested in order, so if you have *: allow host =
* as the first line, it will not matter whatever you add further
down. Everything will still be allowed.
- Use FORM authentication
-
If set, instead of returning
a HTTP authentication needed header, it produces a page
containing a login form.
Mirror Filesystem
A mirror file system mirrors the virtual file tree of another
Challenger server. The file system connects to a Mirror Server using
Roxen RPC. The connection is done in clear text, it is currently not
possible to configure it to use encryption.
The search path of the Mirror Filesystem is used as a cache. The
directory must only be used for this cache and should not be shared
between multiple mirror file systems.
Do not let this module connect to a mirror server in the same
Challenger server. This will cause your server to hang up with no way
to recover, except by manually editing the configuration files and
restarting the server forcefully.
- Mirror Server
-
The location to mirror from. This is
not the HTTP location, but the one entered in the mirror
server on the remote site.
- Mirror Refresh
-
Check the pages this often, in hours.
Please note that the pages are only reloaded from the source server if
they have actually changed. At most one file per second will be
checked. The update may therefore take a while.
- Search path
-
The cache directory this mirror
filesystem should use.
Mirror Server
This module makes it possible to mirror the site, or part of the site,
to other Challenger servers. The mirror server will access pages as a
normal web user, so it is only possible to mirror the parts of the
server that is available to the web. No pages that are password
protected will be mirrored.
Variables:
- Base URL
-
The start location of the part of the web
site that should be mirrored. By default / which will
mirror the whole site.
- Mirror Server port
-
The port that the mirror server
should bind to. Specified as IP address:port number. IP
address can be any in which case it will bind to all IP
addresses the computer handles.
|