Configuration

Use this page to set the configuration options for TWiki. Fill in the settings, and then press 'Next'.

 If you are installing TWiki for the first time
If you just want to get up and running, the only section you need to worry about below is General path settings. You can always come back and configure other settings later.
Explanation of color codes:
  • Settings marked like this are required (they must have a value).
  • Any errors in your configuration will be highlighted.
  • Warnings are non-fatal, but are often a good indicator that something that is wrong.
SettingsClick the buttons below to open each sectionOpen all options
Environment variables(read only)
DOCUMENT_ROOT /srv/www/htdocs
GATEWAY_INTERFACE CGI/1.1
HTTP_ACCEPT image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-powerpoint, application/vnd.ms-excel, application/msword, application/x-shockwave-flash, */*
HTTP_ACCEPT_ENCODING gzip, deflate
HTTP_ACCEPT_LANGUAGE de
HTTP_CONNECTION Keep-Alive
HTTP_COOKIE TWikiTwistyContribattachments=1
HTTP_HOST server
HTTP_USER_AGENT Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727)
PATH /home/COMCARD-NT/kosche/bin:/usr/local/bin:/usr/bin:/sbin:/usr/X11R6/bin:/usr/sbin:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin:/usr/lib/mit/bin:/usr/lib/mit/sbin:/usr/lib/qt3/bin
QUERY_STRING
REMOTE_ADDR 192.168.253.113
REMOTE_PORT 1963
REQUEST_METHOD GET
REQUEST_URI /twiki/bin/configure
SCRIPT_FILENAME /srv/www/htdocs/twiki/bin/configure
SCRIPT_NAME /twiki/bin/configure
SERVER_ADDR 192.168.253.16
SERVER_ADMIN root@server
SERVER_NAME server
SERVER_PORT 80
SERVER_PROTOCOL HTTP/1.1
SERVER_SIGNATURE
Apache/2.0.54 (Linux/SUSE) Server at server Port 80
SERVER_SOFTWARE Apache/2.0.54 (Linux/SUSE)
CGI Setup(read only)
Operating system Unix (linux)
Perl version 5.8.7
@INC library path /srv/www/htdocs/twiki/lib/CPAN/lib//arch/
/srv/www/htdocs/twiki/lib/CPAN/lib//5.8.7/x86_64-linux-thread-multi/
/srv/www/htdocs/twiki/lib/CPAN/lib//5.8.7/
/srv/www/htdocs/twiki/lib/CPAN/lib//
/srv/www/htdocs/twiki/lib
/usr/lib/perl5/5.8.7/x86_64-linux-thread-multi
/usr/lib/perl5/5.8.7
/usr/lib/perl5/site_perl/5.8.7/x86_64-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.7
/usr/lib/perl5/site_perl
/usr/lib/perl5/vendor_perl/5.8.7/x86_64-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.7
/usr/lib/perl5/vendor_perl
.

This is the Perl library path, used to load TWiki modules, third-party modules used by some plugins, and Perl built-in modules.

CGI bin directory /srv/www/htdocs/twiki/bin
TWiki module in @INC path OK, TWiki.pm found (Version: Tue, 04 Jul 2006 build 10807)
Required Perl modules
Error 0.15
File::Copy 2.08
File::Spec 3.18
CGI 3.10
CGI::Carp 1.29
Algorithm::Diff 1.1901
FileHandle 2.01
Optional Perl Modules
CGI::Cookie 1.25
Digest::SHA1 2.10
Text::Diff 0.35
CGI::Session 4.13
Net::SMTP 2.29
MIME::Base64 3.05
POSIX 1.08
Digest::MD5 2.33
Locale::Maketext::Lexicon 0.49
Encode 2.10
PATH_INFO

For a URL such as http://server/twiki/bin/configure/foo/bar, the correct PATH_INFO is /foo/bar, without any prefixed path components. Click here to test this - particularly if you are using mod_perl, Apache or IIS, or are using a web hosting provider. Look at the new path info here. It should be /foo/bar.

mod_perl Not used for this script

mod_perl is not loaded into Apache

CGI user userid = wwwrun groups = www,www

Your CGI scripts are executing as this user.

Original PATH /home/COMCARD-NT/kosche/bin:/usr/local/bin:/usr/bin:/sbin:/usr/X11R6/bin:/usr/sbin:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin:/usr/lib/mit/bin:/usr/lib/mit/sbin:/usr/lib/qt3/bin

This is the PATH value passed in from the web server to this script - it is reset by TWiki scripts to the PATH below, and is provided here for comparison purposes only.

Current PATH /bin:/usr/bin

This is the actual PATH setting that will be used by Perl to run programs. It is normally identical to {SafeEnvPath}, unless that variable is empty, in which case this will be the webserver users standard path..

patch (patch is version 2.5.9).

It is used by the UpgradeTwiki script to upgrade an existing TWiki installation

General path settings
If you are a first-time installer; once you have set up the next six paths below, your TWiki should work - try it. You can always come back and tweak other settings later.

Security Note: Only the URL paths listed below should be browseable from the web. If you expose any other directories (such as lib or templates) you are opening up routes for possible hacking attempts.

This is the root of all TWiki URLs e.g. http://myhost.com:123.
{DefaultUrlHost}
This is the 'cgi-bin' part of URLs used to access the TWiki bin directory e.g. /twiki/bin

See http://twiki.org/cgi-bin/view/TWiki.ShorterUrlCookbook for more information on setting up TWiki to use shorter script URLs.

{ScriptUrlPath}
Attachments URL path e.g. /twiki/pub

Security Note: files in this directory are *not* protected by TWiki access controls. If you require access controls, you will have to use webserver controls (e.g. .htaccess on Apache) This is not set correctly if the link below is broken:
Go to "pub" directory

{PubUrlPath}
Attachments store (file path, not URL), must match /twiki/pub e.g. /usr/local/twiki/pub
{PubDir}
Template directory e.g. /usr/local/twiki/templates
{TemplateDir}
Topic files store (file path, not URL) e.g. /usr/local/twiki/data
{DataDir}
Translation files directory (file path, not URL) e.g. /usr/local/twiki/locales
{LocalesDir}
Suffix of TWiki CGI scripts (e.g. .cgi or .pl). You may need to set this if your webserver requires an extension.
{ScriptSuffix}
Operating system
EXPERT {OS} and {DetailedOS} are calculated in the TWiki code. You should only need to override if there is something badly wrong with those calculations.
{OS} may be one of UNIX WINDOWS VMS DOS MACINTOSH OS2
{OS}
EXPERT The value of Perl $OS
{DetailedOS}
Security setup

Sessions

You can use persistent CGI session tracking even if you are not using login. This allows you to have persistent session variables - for example, skins. Client sessions are not required for logins to work, but TWiki will not be able to remember users unless there is some other mechanism - such as browser cacheing of authentication - available. # See TWiki.TWikiUserAuthentication for a full discussion of the pros and cons of using persistent sessions.
{UseClientSessions}
Absolute file path of the directory in which session files are stored. Defaults to /tmp. Security Note: The directory must not be browseable from the web, otherwise it could be used to mount an attack on the server!
{Sessions}{Dir}
EXPERT Set the session timeout, in seconds. The session will be cleared after this amount of time without the session being accessed. The default is 6 hours (21600 seconds).

NoteBy default, session expiry is done "on the fly" by the same processes used to serve TWiki requests. As such it imposes a load on the server. When there are very large numbers of session files, this load can become significant. For best performance, you can set {Sessions}{ExpireAfter} to a negative number, which will mean that TWiki won't try to clean up expired sessions using CGI processes. Instead you should use a cron job to clean up expired sessions. The standard maintenance cron script tools/tick_twiki.pl includes this function.

{Sessions}{ExpireAfter}
EXPERT If you have persistent sessions enabled, then TWiki will use a cookie in the browser to store the session ID. If the client has cookies disabled, then TWiki will not be able to record the session. As a fallback, TWiki can rewrite local URLs to pass the session ID as a parameter to the URL. This is a potential security risk, because it increases the chance of a session ID being stolen (accidentally or intentionally) by another user. If this is turned off, users with cookies disabled will have to re-authenticate for every secure page access (unless you are using {Sessions}{MapIP2SID}).
{Sessions}{IDsInURLs}
EXPERT It's important to check that the user trying to use a session is the same user who originally created the session. TWiki does this by making sure, before initializing a previously stored session, that the IP address stored in the session matches the IP address of the user asking for that session. Turn this off if a client IP address may change during the lifetime of a session (unlikely)
{Sessions}{UseIPMatching}
EXPERT For compatibility with older versions, TWiki supports the mapping of the clients IP address to a session ID. You can only use this if all client IP addresses are known to be unique. If this option is enabled, TWiki will not store cookies in the browser. The mapping is held in the file $cfg{Sessions}{Dir}/ip2sid. If you turn this option on, you can safely turn {Sessions}{IDsInURLs} off.
{Sessions}{MapIP2SID}

Authentication

TWiki supports different ways of responding when the user asks to log in (or is asked to log in as the result of an access control fault). They are:
  1. none - Don't support logging in, all users have access to everything.
  2. TWiki::Client::TemplateLogin - Redirect to the login template, which asks for a username and password in a form. Does not cache the ID in the browser, so requires client sessions to work.
  3. TWiki::Client::ApacheLogin - Redirect to an '...auth' script for which Apache can be configured to ask for authorization information. Does not require client sessions, but works best with them enabled.
{LoginManager}
Guest user's login name (guest)
{DefaultUserLogin}
Guest user's wiki name (TWikiGuest)
{DefaultUserWikiName}
An admin user login is is required by the install script for some addons and plugins, usually to gain write access to the TWiki web. (TWikiAdminGroup)
{AdminUserWikiName}
EXPERT Group of users that can use special action=repRev and action=delRev on =save= and ALWAYS have edit powers. See TWiki.TWikiDocumentation for an explanation of twiki groups. This user will also run all the standard cron jobs, such as statistics and mail notification. Make sure you edit this topic if you enable authentication
{SuperAdminGroup}
EXPERT Name of topic in the {UsersWebName} web where registered users are listed. Automatically maintained by the standard registration scripts. If you change this setting you will have to use TWiki to manually rename the existing topic
{UsersTopicName}
EXPERT Map login name to Wiki name via the mapping in the topic named in {UsersTopicName}. Set this to $FALSE for .htpasswd authenticated sites where the user's wiki name is the name they use to log in, or if you have some other way of making the mapping to a Wiki name (e.g. a local Plugin).
{MapUserToWikiName}
EXPERT Comma-separated list of scripts that require the user to authenticate. With TemplateLogin, any time an unauthenticated user attempts to access one of these scripts, they will be redirected to the login script. With ApacheLogin, they will be redirected to the logon script (note login and logon; they are different scripts). This approach means that only the logon script needs to be specified as require valid-user when using Apache authentication.

If you want finer access control (e.g. authorised users only in one web but open access in another) then you should *clear* this list, and use TWiki Permissions to control access. Users wishing to make changes will have to log in by clicking a "log in" link instead of being automatically redirected when they try to edit.

{AuthScripts}
EXPERT Authentication realm. This is normally only used in md5 password encoding. You may need to change it if you are sharing a password file with another application.
{AuthRealm}

Passwords

Name of the password handler implementation. The password handler manages the passwords database, and provides password lookup, and optionally password change, services. TWiki ships with two alternative implementations:
  1. TWiki::Users::HtPasswdUser - handles 'htpasswd' format files, with passwords encoded as per the HtpasswdEncoding
  2. TWiki::Users::ApacheHtpasswdUser - should behave identically to HtpasswdUser, but uses the CPAN:Apache::Htpasswd package to interact with Apache. It is shipped mainly as a demonstration of how to write a new password manager.
You can provide your own alternative by implementing a new subclass of TWiki::Users::Password, and pointing {PasswordManager} at it in lib/LocalSite.cfg.

If 'none' is selected, users will not be able to change passwords, and will always be authenticated by the TemplateLogin manager, regardless of what username or password they enter. This may be useful when you want to enable logins so TWiki can identify contributors, but you don't care about passwords.

{PasswordManager}
Minimum length for a password, for new registrations and password changes. If you want to allow null passwords, set this to 0.
{MinPasswordLength}
Path to the file that stores passwords, for the TWiki::Users::HtPasswdUser password manager. You can use the htpasswd Apache program to create a new password file with the right encoding.
{Htpasswd}{FileName}
Password encryption, for the TWiki::Users::HtPasswdUser password manager. You can use the htpasswd Apache program to create a new password file with the right encoding.
crypt
is the default, and should be used on Linux/Unix.
sha1
is recommended for use on Windows.
md5
may be useful on sites where password files are required to be portable. In this case, the {AuthRealm} is used with the username and password to generate the encrypted form of the password, thus: user:{AuthRealm}:password. Take note of this, because it means that if the {AuthRealm} changes, any existing MD5 encoded passwords will be invalidated by the change!
plain
stores passwords as plain text (no encryption).
{Htpasswd}{Encoding}

User Mapping

This allows advanced users to write and over-ride the TWiki User and group mappings rather than the loginname->TWikiUser and Groups definitions comming from TWiki user and group topics. Currently only TWikiUserMapping is implemented.
  1. TWiki::Users::TWikiUserMapping - uses TWiki user and group topics to determine user information and group memberships
{UserMappingManager}

Registration

If you want users to be able to use a login ID other than their wikiname, you need to turn this on. It controls whether the 'LoginName' box appears during the user registration process. If you are using intranet authentication instead of TWiki authentication, you probably need to turn this on.
{Register}{AllowLoginName}
EXPERT Hide password in registration email to the *user* Note that TWiki sends admins a separate confirmation.
{Register}{HidePasswd}
EXPERT Whether registrations must be verified by the user following a link sent in an email to the user's registered email address
{Register}{NeedVerification}

Paths

EXPERT Path control. If set, overrides the default PATH setting to control where TWiki looks for programs. Check notes for your operating system. NOTE: it is better to use full pathnames in the paths to external programs, rather than relying on this path.
  1. Unix or Linux
    • path separator is :
    • ensure diff and shell (Bourne or bash type) is found on the path.
  2. Windows ActiveState Perl, with non-Cygwin RCS, OR no PERL5SHELL setting.
    • path separator is ;
    • The Windows system directory (e.g. c:\winnt\system32) is required in this path.
    • Must NOT use '/' in pathnames as this upsets cmd.exe - single '' is OK using Perl single-quoted string.
  3. Windows: ActiveState Perl, with Cygwin RCS and PERL5SHELL set to 'c:/cygwin/bin/bash.exe -c'
    • path separator is ;
    • best to avoid 'c:/foo' type paths, because it can cause a Perl 'Insecure directory in $ENV{PATH}' error. The best approach is to convert 'c:/foo' to '/cygdrive/c/foo' - odd looking but it works! The Windows system directory (e.g. /cygdrive/c/winnt/system32) is required in this path. For example: /cygdrive/c/YOURCYGWINDIR/bin;/cygdrive/c/YOURWINDOWSDIR/system32
  4. Windows: ActiveState Perl, with non-Cygwin RCS, OR no PERL5SHELL setting.
    • path separator is ';'
    • The Windows system directory is required in this path. Must NOT use / in directories on the path as this upsets cmd.exe - single '\' is OK using Perl single quoted string.
{SafeEnvPath}

Miscellaneous

EXPERT Remove .. from %INCLUDE{filename}%, to stop includes of relative paths.
{DenyDotDotInclude}
EXPERT Allow %INCLUDE of URLs. This is disabled by default, because it is possible to mount a denial-of-service (DoS) attack on a TWiki site using INCLUDE and URLs. Only enable it if you are in an environment where a DoS attack is not a high risk.
{INCLUDE}{AllowURLs}
EXPERTAllow the use of SCRIPT tags in content. if this is set false, all SCRIPT sections will be removed from the body of topics. They can still be used in the HEAD section, though. Note that this may prevent some plugins from functioning correctly.
{AllowInlineScript}
EXPERTFilter-in regex for uploaded (attached) file names (Matching filenames will have .txt appended) WARNING: Be sure to update this list with any configuration or script filetypes that are automatically run by your web server
{UploadFilter}
EXPERTFilter-in regex for webnames, topic names, usernames, include paths and skin names
{NameFilter}
EXPERT If this is set, the the search module will use more relaxed rules governing regular expressions searches.
{ForceUnsafeRegexes}
EXPERT Build the path to /twiki/bin from the URL that was used to get this far. This can be useful when rewriting rules or redirection are used to shorten URLs. Note that displayed links are incorrect after failed authentication if this is set, so unless you really know what you are doing, leave it alone.
{GetScriptUrlFromCgi}
EXPERT Remove port number from URL. If set, and a URL is given with a port number e.g. http://my.server.com:8080/twiki/bin/view, this will strip off the port number before using the url in links.
{RemovePortNumber}
Anti-spam measures
Standard TWiki incorporates some simple anti-spam measures to protect e-mail addresses and control the activities of benign robots. These should be enough to handle intranet requirements. Administrators of public (internet) sites are strongly recommended to investigate the BlackListPlugin
Text added to email addresses to prevent spambots from grabbing addresses e.g. set to 'NOSPAM' to get fred@user.co.ru rendered as fred@user.co.NOSPAM.ru
{AntiSpam}{EmailPadding}
Normally TWiki stores the user's sensitive information (such as their e-mail address) in a database out of public view. It also obfuscates e-mail addresses displayed in the browser. This is to help prevent e-mail spam and identity fraud.
If that is not a risk for you (e.g. you are behind a firewall) and you are happy for e-mails to be made public to all TWiki users, then you can set this option.
Note that if this option is set, then the user parameter to %USERINFO is ignored.
{AntiSpam}{HideUserDetails}
By default, TWiki doesn't do anything to stop robots, such as those used by search engines, from visiting "normal view" pages. If you disable this option, TWiki will generate a META tag to tell robots not to index pages.
Inappropriate pages (like the raw and edit views) are always protected from being indexed.
Note that for full protection from robots you should also use robots.txt (there is an example in the root of your TWiki installation).
{AntiSpam}{RobotsAreWelcome}
Log files
Whether or not to to log different actions in the Access log (in order of how frequently they occur in a typical installation). Information in the Access log is used in gathering web statistics, and is useful as an audit trail of TWiki activity.
{Log}{view}
{Log}{search}
{Log}{changes}
{Log}{rdiff}
{Log}{edit}
{Log}{save}
{Log}{upload}
{Log}{attach}
{Log}{rename}
{Log}{register}
File for configuration messages generated by the configure script. (usually very very low volume).
{ConfigurationLogName}
File for debug messages (usually very low volume). %DATE% gets expanded to YYYYMM (year, month), allowing you to rotate logs.
{DebugFileName}
Warnings - low volume, hopefully! %DATE% gets expanded to YYYYMM (year, month), allowing you to rotate logs.
{WarningFileName}
Access log - high volume, depending on what you enabled in {Log} above. %DATE% gets expanded to YYYYMM (year, month), allowing you to rotate logs.
{LogFileName}
Localisation

Configuration items in this section control two things: recognition of national (non-ascii) characters and the system locale used by TWiki, which influences how programs TWiki and external programa called by it behave regarding internationalization.

Note: for user interface internationalization, the only settings that matter are {UserInterfaceInternationalisation}, which enables user interface internationalisation, and {Site}{CharSet}, which controls which charset TWiki will use for storing topics and displaying content for the users. As soon as {UserInterfaceInternationalisation} is set and the required (Locale::Maketext::Lexicon and Encode/MapUTF8 Perl modules) are installed (see the CGI Setup section above), the multi-language user interface will just work.

Enable user interface internationalisation, i.e. presenting the user interface in the users own language.

Under {UserInterfaceInternationalisation}, check every language that you want your site to support. This setting is only used when {UserInterfaceInternationalisation} is enabled. If you disable all languages, internationalisation will also be disabled, even if {UserInterfaceInternationalisation} is enabled: internationalisation support for no languages doesn't make any sense.

Allowing all languages is the best for really international sites. But for best performance you should enable only the languages you really need. English is the default language, and is always enabled.

{UserInterfaceInternationalisation}
Enable the language da
{Languages}{da}{Enabled}
Enable the language de
{Languages}{de}{Enabled}
Enable the language es
{Languages}{es}{Enabled}
Enable the language fr
{Languages}{fr}{Enabled}
Enable the language it
{Languages}{it}{Enabled}
Enable the language nl
{Languages}{nl}{Enabled}
Enable the language pl
{Languages}{pl}{Enabled}
Enable the language pt
{Languages}{pt}{Enabled}
Enable the language sv
{Languages}{sv}{Enabled}
Enable the language 'zh-cn'
{Languages}{'zh-cn'}{Enabled}
Enable the language 'zh-tw'
{Languages}{'zh-tw'}{Enabled}
Set the timezone (this only effects the display of times, all internal storage is still in GMT). May be gmtime or servertime
{DisplayTimeValues}
Locale - set to enable operating system level locales and internationalisation support for 8-bit character sets
{UseLocale}
Site-wide locale - used by TWiki and external programs such as grep, and to specify the character set in which content must be presented for the user's web browser.
The language part also prevents English plural handling for non-English languages. If the language is not English, TWiki won't try to calculate plurals for WikiNames automatically.
Note that {Site}{Locale} is ignored unless {UseLocale} is set.
Locale names are not standardised - check 'locale -a' on your system to see what's installed, and check this works using command line tools. You may also need to check what charsets your browsers accept - the 'preferred MIME names' at http://www.iana.org/assignments/character-sets are a good starting point.
WARNING: Topics are stored in site character set format, so data conversion of file names and contents will be needed if you change locales after creating topics whose names or contents include 8-bit characters.
Examples:
de_AT.ISO-8859-15 - Austria with ISO-8859-15 for Euro
ru_RU.KOI8-R - Russia
ja_JP.eucjp - Japan
C - English only; no I18N features regarding character encodings and external programs.
{Site}{Locale}
EXPERT Disable to force explicit listing of national chars in regexes, rather than relying on locale-based regexes. Intended for Perl 5.6 or higher on platforms with broken locales: should only be disabled if you have locale problems.
{Site}{LocaleRegexes}
EXPERT If a suitable working locale is not available (i.e. {UseLocale} is disabled), OR you are using Perl 5.005 (with or without working locales), OR {Site}{LocaleRegexes} is disabled, you can use WikiWords with accented national characters by putting any '8-bit' accented national characters within these strings - i.e. {UpperNational} should contain upper case non-ASCII letters. This is termed 'non-locale regexes' mode. If 'non-locale regexes' is in effect, WikiWord linking will work, but some features such as sorting of WikiWords in search results may not. These features depend on {UseLocale}, which can be set independently of {Site}{{LocaleRegexes}, so they will work with Perl 5.005 as long as {UseLocale} is set and you have working locales.
{UpperNational}
EXPERT
{LowerNational}
EXPERT Change this only if you must match a specific locale (from 'locale -a') whose character set is not supported by your chosen conversion module (i.e. Encode for Perl 5.8 or higher, or Unicode::MapUTF8 for other Perl versions). For example, if the locale 'ja_JP.eucjp' exists on your system but only 'euc-jp' is supported by Unicode::MapUTF8, set this to 'euc-jp'. If you don't define it, it will automatically be defaulted from the {Site}{Locale}. Only used if {UseLocale} is set.
{Site}{CharSet}
EXPERT Site language - change this from the default if it is incorrect. Only used if {UseLocale} is set.
{Site}{Lang}
EXPERT Site language - change this from the default if it is incorrect. Only used if {UseLocale} is set.
{Site}{FullLang}
EXPERT Change non-existant plural topic name to singular, e.g. TestPolicies to TestPolicy. Only works in English.
{PluralToSingular}
Store settings
Default store implementation.
  • RcsWrap uses normal RCS executables.
  • RcsLite uses a 100% Perl simplified implementation of RCS. RcsLite is useful if you don't have, and can't install, RCS - for example, on a hosted platform. It will work, and is compatible with RCS, but is not quite as fast.
EXPERT You can manually add options to LocalSite.cfg to select a different store for each web. If $TWiki::cfg{Store}{Fred} is defined, it will be taken as the name of a perl class (which must implement the methods of TWiki::Store::RcsFile). The TWiki::Store::Subversive class is an example implementation using the Subversion version control system as a data store.

Note: The 'diff' program found on the path is used by RcsWrap to compare revisions (diff is version 2.8.7).

{StoreImpl}
File security for new directories. You may have to adjust these permissions to allow (or deny) users other than the webserver user access to directories that TWiki creates. This is an *octal* number representing the standard UNIX permissions (e.g. 755 == rwxr-xr-x)
{RCS}{dirPermission}
File security for new files. You may have to adjust these permissions to allow (or deny) users other than the webserver user access to files that TWiki creates. This is an *octal* number representing the standard UNIX permissions (e.g. 644 == rw-r--r--)
{RCS}{filePermission}
EXPERT Some file-based Store implementations (RcsWrap and RcsLite for example) store attachment meta-data separately from the actual attachments. This means that it is possible to have a file in an attachment directory that is not seen as an attachment by TWiki. Sometimes it is desirable to be able to simply copy files into a directory and have them appear as attachments, and that's what this feature allows you to do. Considered experimental.
{AutoAttachPubFiles}
EXPERT Perl regular expression matching suffixes valid on plain text files Defines which attachments will be treated as ASCII in RCS
{RCS}{asciiFileSuffixes}
EXPERT Set this if you want to use RCS subdirectories instead of storing ,v files alongside the topics. Not recommended.
{RCS}{useSubDir}
EXPERT Set this if your RCS cannot check out using the -p option. May be needed in some windows installations (not required for cygwin)
{RCS}{coMustCopy}
Full path to GNU-compatible egrep program. This is used for searching. %CS{|-i}% will be expanded to -i for case-sensitive search or to the empty string otherwise. Similarly for %DET, which controls whether matching lines are required. (see the documentation on these options with GNU grep for details). (/bin/egrep is version 2.5.1).
{RCS}{EgrepCmd}
Full path to GNU-compatible fgrep program. This is used for searching. (/bin/fgrep is version 2.5.1).
{RCS}{FgrepCmd}
RcsWrap initialise a file as binary. %FILENAME|F% will be expanded to the filename. (/usr/bin/rcs is version 5.7)
{RCS}{initBinaryCmd}
RcsWrap initialise a topic file. (/usr/bin/rcs is version 5.7)
{RCS}{initTextCmd}
RcsWrap uses this on Windows to create temporary binary files during upload. (/usr/bin/rcs is version 5.7)
{RCS}{tmpBinaryCmd}
RcsWrap check-in. %USERNAME|S% will be expanded to the username. %COMMENT|U% will be expanded to the comment. (/usr/bin/ci is version 5.7)
{RCS}{ciCmd}
RcsWrap check in, forcing the date. %DATE|D% will be expanded to the date. (/usr/bin/ci is version 5.7)
{RCS}{ciDateCmd}
RcsWrap check out. %REVISION|N% will be expanded to the revision number (/usr/bin/co is version 5.7)
{RCS}{coCmd}
RcsWrap file history. (/usr/bin/rlog is version 5.7)
{RCS}{histCmd}
RcsWrap revision info about the file. (/usr/bin/rlog is version 5.7)
{RCS}{infoCmd}
RcsWrap revision info about the revision that existed at a given date. %REVISIONn|N% will be expanded to the revision number. %CONTEXT|N% will be expanded to the number of lines of context. (/usr/bin/rlog is version 5.7)
{RCS}{rlogDateCmd}
RcsWrap differences between two revisions. (/usr/bin/rcsdiff is version 5.7)
{RCS}{diffCmd}
RcsWrap lock a file. (/usr/bin/rcs is version 5.7)
{RCS}{lockCmd}
RcsWrap unlock a file. (/usr/bin/rcs is version 5.7)
{RCS}{unlockCmd}
RcsWrap break a file lock.
{RCS}{breaklockCmd}
RcsWrap delete a specific revision. (/usr/bin/rcs is version 5.7)
{RCS}{delRevCmd}
Path to the directory where the RCS store implementation will create plugin work areas. Plugin work areas are directories that are managed by plugins, for example for temporary files. The directory has to be readable and writable by the webserver user.
{RCS}{WorkAreaDir}
Set to enable hierarchical webs. Without this setting, TWiki will only allow a single level of webs. If you set this, you can use multiple levels, like a directory tree, i.e. webs within webs. See TWiki.MultiLevelWikiWebs for more details.
{EnableHierarchicalWebs}
EXPERT Name of the web where documentation and default preferences are held. If you change this setting, you must make sure the web exists and contains appropriate content, and upgrade scripts may no longer work (i.e. don't change it unless you are certain that you know what you are doing!)
{SystemWebName}
EXPERT Name of the web used as a trashcan (where deleted topics are moved) If you change this setting, you must make sure the web exists.
{TrashWebName}
EXPERT Name of the web where usertopics are stored. If you change this setting, you must make sure the web exists and contains appropriate content, and upgrade scripts may no longer work (i.e. don't change it unless you are certain that you know what you are doing!)
{UsersWebName}
Mail and Proxies
EXPERT Name of topic in each web that has notification registrations. If you change this setting you will have to use TWiki to manually rename the topic in all existing webs
{NotifyTopicName}
Remove IMG tags in notification mails.
{RemoveImgInMailnotify}
Mail program. If Net::SMTP is installed, it will be used in preference. Otherwise this needs to be a command-line program that accepts MIME format mail messages on standard input, and mails them. To disable all outgoing email from TWiki leave both this field and the MAILHOST field below blank. Net::SMTP is installed in this environment, so this setting will not be used.
{MailProgram}
Mail host for outgoing mail. This is only used if Net::SMTP is installed. Examples: mail.your.company CAUTION This setting can be overridden by a setting of SMTPMAILHOST in TWikiPreferences. Make sure you delete that setting if you are using a TWikiPreferences topic from a previous release of TWiki. To disable all outgoing mail from TWiki leave both this field and the MailProgram field above blank.
{SMTP}{MAILHOST}
Mail domain sending mail, required if you are using Net::SMTP. SMTP requires that you identify the server sending mail. If not set, Net::SMTP will guess it for you. Example: twiki.your.company. CAUTION This setting can be overridden by a setting of SMTPSENDERHOST in TWikiPreferences. Make sure you delete that setting if you are using a TWikiPreferences topic from a previous release of TWiki.
{SMTP}{SENDERHOST}
Username for SMTP. Only required if your server requires authentication. If this is left blank, TWiki will not attempt to authenticate the mail sender.
{SMTP}{Username}
Password for your {SMTP}{Username}.
{SMTP}{Password}
EXPERT Set this option on to enable debug mode in SMTP. Output will go to the webserver error log.
{SMTP}{Debug}
EXPERT Some environments require outbound HTTP traffic to go through a proxy server. (e.g. proxy.your.company). CAUTION This setting can be overridden by a PROXYHOST setting in TWikiPreferences. Make sure you delete the setting from there if you are using a TWikiPreferences topic from a previous release of TWiki.
{PROXY}{HOST}
EXPERT Some environments require outbound HTTP traffic to go through a proxy server. Set the port number here (e.g: 8080). CAUTION This setting can be overridden by a PROXYPORT setting in TWikiPreferences. Make sure you delete the setting from there if you are using a TWikiPreferences topic from a previous release of TWiki.
{PROXY}{PORT}
Statistics
Number of top viewed topics to show in statistics topic
{Stats}{TopViews}
Number of top contributors to show in statistics topic
{Stats}{TopContrib}
EXPERT Name of statistics topic
{Stats}{TopicName}
Miscellaneous settings
EXPERT List of protocols (URI schemes) that TWiki will automatically recognize and activate if found in absolute links. Additions you might find useful in your environment could be 'imap' or 'pop' (if you are using shared mailboxes accessible through your browser), or 'tel' if you have a softphone setup that supports links using this URI scheme. A list of popular URI schemes can be found at http://en.wikipedia.org/wiki/URI_scheme.
{LinkProtocolPattern}
EXPERT Set to enable experimental mirror-site support. If this name is different to MIRRORSITENAME, then this TWiki is assumed to be a mirror of another. You are highly recommended not to dabble with this experimental, undocumented, untested feature!
{SiteWebTopicName}
EXPERT Name of site-level preferences topic in the {SystemWebName} web. If you change this setting you will have to use TWiki and *manually* rename the existing topic. (i.e. don't change it unless you are certain that you know what you are doing!)
{SitePrefsTopicName}
EXPERT Web.TopicName of the site-level local preferences topic. If this topic exists, any settings in it will override settings in {SitePrefsTopicName}.
You are strongly recommended to keep all your local changes in a {LocalSitePreferences} topic rather than changing TWikiPreferences, as it will make upgrading a lot easier.
{LocalSitePreferences}
EXPERT Name of main topic in a web. If you change this setting you will have to use TWiki to manually rename the topic in all existing webs (i.e. don't change it unless you are certain that you know what you are doing!)
{HomeTopicName}
EXPERT Name of preferences topic in a web. If you change this setting you will have to use TWiki to manually rename the topic in all existing webs (i.e. don't change it unless you are certain that you know what you are doing!)
{WebPrefsTopicName}
EXPERT How many links to other revisions to show in the bottom bar. 0 for all
{NumberOfRevisions}
EXPERT If this is set to a > 0 value, and the revision control system supports it (RCS does), then if a second edit of the same topic is done by the same user within this number of seconds, a new revision of the topic will NOT be created (the top revision will be replaced). Set this to 0 if you want all topic changes to create a new revision (as required by most formal development processes).
{ReplaceIfEditedAgainWithin}
EXPERT When a topic is edited, the user takes a "lease" on that topic. If another user tries to also edit the topic while the lease is still active, they will get a warning. Leases are released automatically when the topic is saved; otherwise they remain active for {LeaseLength} seconds from when the edit started (or was checkpointed).

Note: Leases are not locks; they are purely advisory. Leases can always be broken, but they are valuable if you want to avoid merge conflicts (e.g. you use highly structured data in your topic text and want to avoid ever having to deal with conflicts)

{LeaseLength}
EXPERT Even if the other users' lease has expired, then you can specify that they should still get a (less forceful) warning about the old lease for some additional time after the lease expired. You can set this to 0 to suppress these extra warnings completely, or to -1 so they are always issued, or to a number of seconds since the old lease expired.
{LeaseLengthLessForceful}
EXPERT Pathname to file that maps file suffixes to MIME types : For Apache server set this to Apache's mime.types file pathname, for example /etc/httpd/mime.types, or use the default shipped in the TWiki data directory.
{MimeTypesFileName}
EXPERT Directory where registration approvals are held. Should be somewhere that is not browsable from the web.
{RegistrationApprovals}
EXPERT If set, this will cause TWiki to treat warnings as errors that will cause TWiki to die. Provided for use by Plugin and Skin developers, who should develop with it switched on.
{WarningsAreErrors}
Plugins
The plugins listed below were discovered by searching the @INC path for modules that match the TWiki standard e.g. TWiki/Plugins/MyPlugin.pm. see Installed Plugins for diagnostics
CommentPlugin
{Plugins}{CommentPlugin}{Enabled}
EditTablePlugin
{Plugins}{EditTablePlugin}{Enabled}
EmptyPlugin
{Plugins}{EmptyPlugin}{Enabled}
FilterPlugin
{Plugins}{FilterPlugin}{Enabled}
IfDefinedPlugin
{Plugins}{IfDefinedPlugin}{Enabled}
InterwikiPlugin
{Plugins}{InterwikiPlugin}{Enabled}
LdapPlugin
{Plugins}{LdapPlugin}{Enabled}
NatSkinPlugin
{Plugins}{NatSkinPlugin}{Enabled}
PreferencesPlugin
{Plugins}{PreferencesPlugin}{Enabled}
RedDotPlugin
{Plugins}{RedDotPlugin}{Enabled}
RenderListPlugin
{Plugins}{RenderListPlugin}{Enabled}
SlideShowPlugin
{Plugins}{SlideShowPlugin}{Enabled}
SmiliesPlugin
{Plugins}{SmiliesPlugin}{Enabled}
SpreadSheetPlugin
{Plugins}{SpreadSheetPlugin}{Enabled}
TWikiDrawPlugin
{Plugins}{TWikiDrawPlugin}{Enabled}
TablePlugin
{Plugins}{TablePlugin}{Enabled}
TagMePlugin
{Plugins}{TagMePlugin}{Enabled}
WysiwygPlugin
{Plugins}{WysiwygPlugin}{Enabled}
Plugins evaluation order. If set to a comma-separated list of plugin names, will change the execution order of plugins so the listed subset of plugins are executed first. The default execution order is alphabetical on plugin name.
{PluginsOrder}