# Foswiki - The Free and Open Source Wiki, http://foswiki.org/ # See bottom of file for license and copyright information. # # This file contains a specification of the parts of Foswiki that can be # configured using =configure=. It is combined with =Config.spec= files # shipped with extensions to generate the interface seen when you run # =configure=. # # When you run configure from your browser, it will work out required # settings and write a new LocalSite.cfg. It should never be necessary to # modify this file directly. # # If for some strange reason you want to brew your own LocalSite.cfg by # copying this file (NOT recommended), then you must un-comment and complete # the PATH and URLPATH settings that are flagged as Mandatory ( M** ) and # remove the __END__ line toward the end of the file. # # See 'setlib.cfg' in the 'bin' directory for how to configure a non-standard # include path for Perl modules. # ############################################################################# # # NOTE FOR DEVELOPERS: # The comments in this file are formatted so that the 'configure' script # can extract documentation from here. See # http://foswiki.org/System/DevelopingPlugins#Integrating_with_configure # for details of the syntax used. # # You can use $Foswiki::cfg variables in other settings, # but you must be sure they are only evaluated under program control and # NOT when this file is loaded. For example: ## $Foswiki::cfg{Blah} = "$Foswiki::cfg{DataDir}/blah.dat"; # BAD ## $Foswiki::cfg{Blah} = '$Foswiki::cfg{DataDir}/blah.dat'; # GOOD # # Note that the general path settings are deliberately commented out. # This is because they *must* be defined in LocalSite.cfg, and *not* here. ############################################################################# #---+ General path settings #
If you are a first-time installer: once you have set # up the eight paths below, your wiki 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.
# **URL M** # This is the root of all Foswiki URLs e.g. http://myhost.com:123. # $Foswiki::cfg{DefaultUrlHost} = 'http://your.domain.com'; # **URLPATH M** # This is the 'cgi-bin' part of URLs used to access the Foswiki bin # directory e.g./foswiki/binview script may be adjusted below. Other scripts need to
# be manually added to lib/LocalSite.cfg
# $Foswiki::cfg{ScriptUrlPath} = '/foswiki/bin';
# **URLPATH M**
# This is the complete path used to access the Foswiki view script including any suffix. Do not include a trailing /.
# (This is an exception override, so the ScriptSuffix is not automatically added.)
# e.g. /foswiki/bin/view.pl/bin. e.g. if your {ScriptUrlPath} is either empty or set to /bin leave
# {ScriptUrlPaths}{view} empty; if it is set to something like /directory/bin set it to /directory
#
# Do not change
# this unless your Web Server configuration has been set to use shorter URLs. See also the Foswiki
# Apache Config Generator and
# Shorter URL Cookbook
$Foswiki::cfg{ScriptUrlPaths}{view} = '$Foswiki::cfg{ScriptUrlPath}/view$Foswiki::cfg{ScriptSuffix}';
# **PATH M**
# This is the file system path used to access the Foswiki bin
# directory.
# $Foswiki::cfg{ScriptDir} = '/home/httpd/foswiki/bin';
# **URLPATH M**
# Attachments URL path e.g. /foswiki/pub
# Security Note: files in this directory are *not*
# protected by Foswiki access controls. If you require access controls, you
# will have to use webserver controls (e.g. .htaccess on Apache)
# $Foswiki::cfg{PubUrlPath} = '/foswiki/pub';
# **NUMBER EXPERT**
# This is the maximum number of files and directories that will be checked
# for permissions for the pub and data Directory paths. This limit is initially set to
# 5000, which should be reasonable for a default installation. If it is
# exceeded, then an informational message is returned stating that incomplete
# checking was performed. If this is set to a large number on large installations,
# then a significant delay will be incurred when configure is run, due to the
# recursive directory checking.
$Foswiki::cfg{PathCheckLimit} = 5000;
# **PATH M**
# Attachments store (file path, not URL), must match /foswiki/pub e.g.
# /usr/local/foswiki/pub
# $Foswiki::cfg{PubDir} = '/home/httpd/foswiki/pub';
# **PATH M**
# Topic files store (file path, not URL) e.g. /usr/local/foswiki/data
# $Foswiki::cfg{DataDir} = '/home/httpd/foswiki/data';
# **PATH M**
# Tools directory e.g. /usr/local/foswiki/tools
# $Foswiki::cfg{ToolsDir} = '/home/httpd/foswiki/tools';
# **PATH M**
# Template directory e.g. /usr/local/foswiki/templates
# $Foswiki::cfg{TemplateDir} = '/home/httpd/foswiki/templates';
# **PATH M**
# Translation files directory (file path, not URL) e.g. /usr/local/foswiki/locale
# $Foswiki::cfg{LocalesDir} = '/home/httpd/foswiki/locale';
# **PATH M**
# Directory where Foswiki stores files that are required for the management
# of Foswiki, but are not required to be browsed from the web.
# A number of subdirectories will be created automatically under this
# directory:
# http://your.domain.com:8080,https://other.domain.com
$Foswiki::cfg{PermittedRedirectHostUrls} = '';
# **STRING 10**
# Suffix of Foswiki CGI scripts (e.g. .cgi or .pl). You may need to set this
# if your webserver requires an extension.
$Foswiki::cfg{ScriptSuffix} = '';
# **PATH M**
# You can override the default PATH setting to control
# where Foswiki looks for external programs, such as grep and rcs.
# By restricting this path to just a few key
# directories, you increase the security of your Foswiki.
# In order to support tracking who changed what, and apply access controls, # Foswiki is normally configured to use logins. The tabs below control # various aspects of logins.
#---++ Sessions #Sessions are how Foswiki tracks a user across multiple requests. #
'Show expert options' has advanced options for controlling sessions.
# **BOOLEAN** # Control whether Foswiki will use persistent sessions. # A user's session id is stored in a cookie, and this is used to identify # the user for each request they make to the server. # You can use sessions 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 Foswiki will not # be able to remember logged-in users consistently. # See User # Authentication for a full discussion of the pros and # cons of using persistent sessions. $Foswiki::cfg{UseClientSessions} = 1; # **STRING 20 EXPERT DISPLAY_IF {UseClientSessions}** # 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). # Note By default, session expiry is done "on the fly" by the same # processes used to # serve Foswiki 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 Foswiki 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_foswiki.pl includes this function. # Session files are stored in the {WorkingDir}/tmp directory. $Foswiki::cfg{Sessions}{ExpireAfter} = 21600; # **NUMBER EXPERT DISPLAY_IF {UseClientSessions} && {LoginManager}=='Foswiki::LoginManager::TemplateLogin'** # TemplateLogin only. # Normally the cookie that remembers a user session is set to expire # when the browser exits, but using this value you can make the cookie # expire after a set number of seconds instead. If you set it then # users will be able to tick a 'Remember me' box when logging in, and # their session cookie will be remembered even if the browser exits. # This should always be the same as, or longer than, {Sessions}{ExpireAfter}, # otherwise Foswiki may delete the session from its memory even though the # cookie is still active. # A value of 0 will cause the cookie to expire when the browser exits. # One month is roughly equal to 2600000 seconds. $Foswiki::cfg{Sessions}{ExpireCookiesAfter} = 0; # **BOOLEAN EXPERT DISPLAY_IF {UseClientSessions}** # Foswiki will normally use a cookie in # the browser to store the session ID. If the client has cookies disabled, # then Foswiki will not be able to record the session. As a fallback, Foswiki # 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}). $Foswiki::cfg{Sessions}{IDsInURLs} = 0; # **STRING 20 EXPERT DISPLAY_IF {UseClientSessions}** # By default the Foswiki session cookie is only accessible by the host which # sets it. To change the scope of this cookie you can set this to any other # value (ie. company.com). Make sure that Foswiki can access its own cookie.'Show expert options' has advanced options for controlling validation.
# **SELECT strikeone,embedded,none ** #By default Foswiki uses Javascript to perform "double submission" validation # of browser requests. This technique, called "strikeone", is highly # recommended for the prevention of cross-site request forgery (CSRF). See also # # Why am I being asked to confirm?.
#If Javascript is known not to be available in browsers that use the site, # or cookies are disabled, but you still want validation of submissions, # then you can fall back on a embedded-key validation technique that # is less secure, but still offers some protection against CSRF. Both # validation techniques rely on user verification of "suspicious" # transactions.
#This option allows you to select which validation technique will be
# used.
# If it is set to "strikeone", or is undefined, 0, or the empty string, then
# double-submission using Javascript will be used.
# If it is set to "embedded", then embedded validation keys will be used.
# If it is set to "none", then no validation of posted requests will
# be performed.
Foswiki supports different ways of handling how a user asks, or is asked, # to log in.
#Infrequently used options can be displayed by clicking 'Show expert options'
# **SELECTCLASS none,Foswiki::LoginManager::*Login** #edit and
# save should be removed from this list if the guest user is permitted to
# edit topics without authentication.
$Foswiki::cfg{AuthScripts} = 'attach,compareauth,edit,manage,previewauth,rdiffauth,rename,restauth,save,statistics,upload,viewauth,viewfileauth';
# **BOOLEAN EXPERT DISPLAY_IF {LoginManager}=='Foswiki::LoginManager::TemplateLogin'**
# Browsers typically remember your login and passwords to make authentication
# more convenient for users. If your Foswiki is used on public terminals,
# you can prevent this, forcing the user to enter the login and password
# every time.
$Foswiki::cfg{TemplateLogin}{PreventBrowserRememberingPassword} = 0;
# **REGEX EXPERT**
# The perl regular expression used to constrain user login names. Some
# environments may require funny characters in login names, such as \.
# This is a filter in expression i.e. a login name must match this
# expression or an error will be thrown and the login denied.
$Foswiki::cfg{LoginNameFilterIn} = qr/^[^\s\*?~^\$@%`"'&;|<>\x00-\x1f]+$/;
# **STRING 20 EXPERT**
# Guest user's login name. You are recommended not to change this.
$Foswiki::cfg{DefaultUserLogin} = 'guest';
# **STRING 20 EXPERT**
# Guest user's wiki name. You are recommended not to change this.
$Foswiki::cfg{DefaultUserWikiName} = 'WikiGuest';
# **STRING 20 EXPERT**
# An internal admin user login name (matched with the configure password, if set)
# which can be used as a temporary Admin login (see: Main.AdminUser).
# This login name is additionally required by the install script for some addons
# and plugins, usually to gain write access to the Foswiki web.
# If you change this you risk making topics uneditable.
$Foswiki::cfg{AdminUserLogin} = 'admin';
# **STRING 20 EXPERT**
# An admin user WikiName that is displayed for actions done by the AdminUserLogin
# You should normally not need to change this. (You will need to move the
# %USERSWEB%.AdminUser topic to match. Do not register a user with this name!)
# This is a special WikiName and should never be directly authenticated.
# It is accessed by logging in using the AdminUserLogin either directly or with the
# sudo login.
$Foswiki::cfg{AdminUserWikiName} = 'AdminUser';
# **STRING 20 EXPERT**
# Group of users that can use special action=repRev and action=delRev
# on save and ALWAYS have edit powers. See %SYSTEMWEB%.CompleteDocumentation
# for an explanation of wiki groups. This user will also run all the
# standard cron jobs, such as statistics and mail notification.
# The default value "AdminGroup" is used everywhere in Foswiki to
# protect important settings so you would need a really special reason to
# change this setting.
$Foswiki::cfg{SuperAdminGroup} = 'AdminGroup';
# **STRING 20 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 Foswiki to manually rename the existing topic
$Foswiki::cfg{UsersTopicName} = 'WikiUsers';
#---++ User mapping
# The user mapping is used to equate login names, used with external
# authentication systems, with Foswiki user identities.
# **SELECTCLASS Foswiki::Users::*UserMapping**
# By default only
# two mappings are available, though other mappings *may* be installed to
# support authentication providers.
# The password manager handles the passwords database, and provides # password lookup, and optionally password change, services to the rest of # Foswiki.
# **SELECTCLASS none,Foswiki::Users::*User** # Name of the password handler implementation. Foswiki ships with two alternative implementations: #Registration is the process by which new users register themselves with # Foswiki.
# **BOOLEAN** # 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, and is used to tell # the User Mapping module whether to map login names to wikinames or not # (if it supports mappings, that is). $Foswiki::cfg{Register}{AllowLoginName} = $FALSE; # **BOOLEAN** # Controls whether new user registration is available. # It will have no effect on existing users. $Foswiki::cfg{Register}{EnableNewUserRegistration} = $TRUE; # **BOOLEAN** # Whether registrations must be verified by the user, by following # a link sent in an email to the user's registered email address $Foswiki::cfg{Register}{NeedVerification} = $FALSE; # **BOOLEAN EXPERT** # Controls whether the user password has to be entered twice on the # registration page or not. The default is to require confirmation, in which # case the same password must be provided in the confirmation input. $Foswiki::cfg{Register}{DisablePasswordConfirmation} = $FALSE; # **BOOLEAN EXPERT** # Hide password in registration email to the user # Note that Foswiki sends administrators a separate confirmation. $Foswiki::cfg{Register}{HidePasswd} = $TRUE; # **STRING 20 EXPERT** # The internal user that creates user topics on new registrations. # You are recommended not to change this. $Foswiki::cfg{Register}{RegistrationAgentWikiName} = 'RegistrationAgent'; # **BOOLEAN** # Normally users can register multiple WikiNames using the same email address. # Enable this parameter to prevent multiple registrations using the same email address. $Foswiki::cfg{Register}{UniqueEmail} = $FALSE; # **REGEX 80 EXPERT** # This regular expression can be used to block certain email addresses from being used # for registering users. It can be used to block some of the more common wikispam bots. # If this regex matches the entered address, the registration is rejected. For example:^.*@(lease-a-seo\.com|paydayloans).*$@(?!(example\.com|example\.net)$)
$Foswiki::cfg{Register}{EmailFilter} = '';
# **STRING H**
# Configuration password (not prompted)
$Foswiki::cfg{Password} = '';
#---++ Environment
# **PERL**
# Array of the names of configuration items that are available when using %IF, %SEARCH
# and %QUERY{}%. Extensions can push into this array to extend the set. This is done as
# a filter in because while the bulk of configuration items are quite innocent,
# it's better to be a bit paranoid.
$Foswiki::cfg{AccessibleCFG} = [ '{ScriptSuffix}', '{LoginManager}', '{AuthScripts}', '{LoginNameFilterIn}', '{AdminUserLogin}', '{AdminUserWikiName}', '{SuperAdminGroup}', '{UsersTopicName}', '{AuthRealm}', '{MinPasswordLength}', '{Register}{AllowLoginName}', '{Register}{EnableNewUserRegistration}', '{Register}{NeedVerification}', '{Register}{RegistrationAgentWikiName}', '{AllowInlineScript}', '{DenyDotDotInclude}', '{UploadFilter}', '{NameFilter}', '{AccessibleCFG}', '{AntiSpam}{EmailPadding}', '{AntiSpam}{EntityEncode}','{AntiSpam}{HideUserDetails}', '{AntiSpam}{RobotsAreWelcome}', '{Stats}{TopViews}', '{Stats}{TopContrib}', '{Stats}{TopicName}', '{UserInterfaceInternationalisation}', '{UseLocale}', '{Site}{Locale}', '{Site}{CharSet}', '{DisplayTimeValues}', '{DefaultDateFormat}', '{Site}{LocaleRegexes}', '{UpperNational}', '{LowerNational}', '{PluralToSingular}', '{EnableHierarchicalWebs}', '{WebMasterEmail}', '{WebMasterName}', '{NotifyTopicName}', '{SystemWebName}', '{TrashWebName}', '{SitePrefsTopicName}', '{LocalSitePreferences}', '{HomeTopicName}', '{WebPrefsTopicName}', '{UsersWebName}', '{TemplatePath}', '{LinkProtocolPattern}', '{NumberOfRevisions}', '{MaxRevisionsInADiff}', '{ReplaceIfEditedAgainWithin}', '{LeaseLength}', '{LeaseLengthLessForceful}', '{Plugins}{WebSearchPath}', '{PluginsOrder}', '{Cache}{Enabled}', '{Validation}{Method}', '{Register}{DisablePasswordConfirmation}' ];
# **BOOLEAN**
# Allow %INCLUDE of URLs. This is disabled by default, because it is possible
# to mount a denial-of-service (DoS) attack on a Foswiki site using INCLUDE and
# URLs. Only enable it if you are in an environment where a DoS attack is not
# a high risk.
# You may also need to configure the proxy settings ({PROXY}{HOST} and
# {PROXY}{PORT}) if your server is behind a firewall and you allow %INCLUDE of
# external webpages (see Proxies).
$Foswiki::cfg{INCLUDE}{AllowURLs} = $FALSE;
# **BOOLEAN**
# Used to disallow the use of SCRIPT and LITERAL tags in topics by removing
# them from the body of topics during rendering.
# This setting is fundamentally unsafe and is now
# DEPRECATED - use SafeWikiPlugin instead.
$Foswiki::cfg{AllowInlineScript} = $TRUE;
# **BOOLEAN EXPERT**
# If a login name (or an internal user id) cannot be mapped to a wikiname,
# then the user is unknown. By default the user will be displayed using
# whatever identity is stored for them. For security reasons you may want
# to obscure this stored id by setting this option to true.
$Foswiki::cfg{RenderLoggedInButUnknownUsers} = $FALSE;
# **BOOLEAN EXPERT**
# Remove .. from %INCLUDE{filename}%, to stop includes
# of relative paths.
$Foswiki::cfg{DenyDotDotInclude} = $TRUE;
# **REGEX EXPERT**
# Filter-in regex for uploaded (attached) file names. This is a filter
# in, so any files that match this filter will be renamed on upload
# to prevent upload of files with the same file extensions as executables.
# NOTE: Be sure to update
# this list with any configuration or script filetypes that are
# automatically run by your web server.
$Foswiki::cfg{UploadFilter} = qr/^(\.htaccess|.*\.(?i)(?:php[0-9s]?(\..*)?|[sp]htm[l]?(\..*)?|pl|py|cgi))$/;
# **REGEX EXPERT**
# Filter-out regex for webnames, topic names, file attachment names, usernames,
# include paths and skin names. This is a filter out, so if any of the
# characters matched by this expression are seen in names, they will be
# removed.
$Foswiki::cfg{NameFilter} = qr/[\s\*?~^\$@%`"'&;|<>\[\]#\x00-\x1f]/;
# **BOOLEAN EXPERT**
# If this is set, then the search module will use more relaxed
# rules governing regular expressions searches.
$Foswiki::cfg{ForceUnsafeRegexes} = $FALSE;
# **BOOLEAN EXPERT**
# Build the path to /foswiki/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.
$Foswiki::cfg{GetScriptUrlFromCgi} = $FALSE;
# **BOOLEAN EXPERT**
# Draining STDIN may be necessary if the script is called due to a
# redirect and the original query was a POST. In this case the web
# server is waiting to write the POST data to this script's STDIN,
# but CGI.pm won't drain STDIN as it is seeing a GET because of the
# redirect, not a POST. Enable this only in case a Foswiki script
# hangs.
$Foswiki::cfg{DrainStdin} = $FALSE;
# **BOOLEAN EXPERT**
# Remove port number from URL. If set, and a URL is given with a port
# number e.g. http://my.server.com:8080/foswiki/bin/view, this will strip
# off the port number before using the url in links.
$Foswiki::cfg{RemovePortNumber} = $FALSE;
# **BOOLEAN EXPERT**
# Allow the use of URLs in the redirectto parameter to the
# save script, and in topic parameter to the
# view script. WARNING: Enabling this feature makes it
# very easy to build phishing pages using the wiki, so in general,
# public sites should not enable it. Note: It is possible to
# redirect to a topic regardless of this setting, such as
# topic=OtherTopic or redirectto=Web.OtherTopic.
# To enable redirection to a list of trusted URLs, keep this setting
# disabled and set the {PermittedRedirectHostUrls}.
$Foswiki::cfg{AllowRedirectUrl} = $FALSE;
# **BOOLEAN EXPERT**
# Some authentication systems do not allow parameters to be passed in
# the target URL to be redirected to after authentication. In this case,
# Foswiki can be configured to encode the address of the parameter cache
# in the path information of the URL. Note that if you are using Apache
# rewriting rules, this may not work.
$Foswiki::cfg{UsePathForRedirectCache} = $FALSE;
# **REGEX EXPERT**
# Defines the filter-in regexp that must match the names of environment
# variables that can be seen using the %ENV{}% macro. Set it to
# '^.*$' to allow all environment variables to be seen (not recommended).
$Foswiki::cfg{AccessibleENV} = '^(HTTP_\w+|REMOTE_\w+|SERVER_\w+|REQUEST_\w+|MOD_PERL|FOSWIKI_ACTION|PATH_INFO)$';
#---++ Proxies
# Some environments require outbound HTTP traffic to go through a proxy
# server. (e.g. http://proxy.your.company).
# **STRING 30**
# Hostname or address of the proxy server.
# CAUTION This setting can be overridden by a PROXYHOST setting
# in SitePreferences. Make sure you delete the setting from there if
# you are using a SitePreferences topic from a previous release of Foswiki.
# If your proxy requires authentication, simply put it in the URL, as in:
# http://username:password@proxy.your.company.
$Foswiki::cfg{PROXY}{HOST} = '';
# **STRING 30**
# 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 SitePreferences. Make sure you delete the setting from there if you
# are using a SitePreferences topic from a previous release of Foswiki.
$Foswiki::cfg{PROXY}{PORT} = '';
#---++ Anti-spam
# Foswiki 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 install # # AntiWikiSpamPlugin
# **STRING 50** # Text added to e-mail addresses to prevent spambots from grabbing # addresses e.g. set to 'NOSPAM' to get fred@user.co.ru # rendered as fred@user.coNOSPAM.ru $Foswiki::cfg{AntiSpam}{EmailPadding} = ''; # **BOOLEAN** # Normally Foswiki stores the user's sensitive information (such as their e-mail # address) in a database out of public view. This is to help prevent e-mail # spam and identity fraud.user parameter to
# %USERINFO is ignored.
$Foswiki::cfg{AntiSpam}{HideUserDetails} = $TRUE;
# **BOOLEAN**
# By default Foswiki will also manipulate e-mail addresses to reduce the harvesting
# of e-mail addresses. Foswiki will encode all non-alphanumeric characters to their
# HTML entity equivalent. e.g. @ becomes &Allowed if you want the statistics script to create a
# missing WebStatistics topic only when the parameter autocreate=1 is supplied.
# Set it to Always if a missing WebStatistics topic should be created unless
# overridden by URL parameter 'autocreate=0'. Prohibited is
# the previous behavior and is the default.
$Foswiki::cfg{Stats}{AutoCreateTopic} = 'Prohibited';
# **STRING 20 EXPERT**
# If this is set to the name of a Group, then the statistics script will only run for
# members of the specified and the AdminGroup. Ex. Set to AdminGroup to restrict
# statistics to administrators. Default is un-set. Anyone can run statistics.
$Foswiki::cfg{Stats}{StatisticsGroup} = '';
# **STRING 20 EXPERT**
# Name of statistics topic. Note: If you change the name of the statistics topic
# you must also rename the WebStatistics topic in each web, and the DefaultWebStatistics topic
# in the System web (and possibly in the Main web).
$Foswiki::cfg{Stats}{TopicName} = 'WebStatistics';
#############################################################################
#---+ Internationalisation -- TABS
#---++ Languages
# **BOOLEAN**
# Enable user interface internationalisation, i.e. presenting the user
# interface in the users own language(s). Some languages require the
# Locale::Maketext::Lexicon and Encode/MapUTF8 Perl
# modules to be installed.
Enable compilation of .po string files into compressed .mo files.
# This can result in a significant performance improvement for I18N, but has also been
# reported to cause issues on some systems. So for now this is considered experimental.
# Note that if string files are being edited, it requires that configure be rerun to recompile
# modified files. Disable this option to prevent compling of string files. If disabled,
# stale <language>.mo files should be removed from the
# Foswiki locale directory so that the modified .po file will be used.
$Foswiki::cfg{LanguageFileCompression} = $FALSE;
# *LANGUAGES* Marker used by bin/configure script - do not remove!
#
If {UserInterfaceInternationalisation} is enabled, the following # settings control the languages that are available in the # user interface. Check every language that you want your site to support.
#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.
#{LocalesDir} is used to find the languages supported in your installation,
# so if the list of available languages is empty, it's probably because
# {LocalesDir} is pointing to the wrong place.
Enable operating system level locales and internationalisation support # for 8-bit character sets. This may be required for correct functioning # of the programs that Foswiki calls when your wiki content uses # international character sets.
# **BOOLEAN** # Enable the used of {Site}{Locale} $Foswiki::cfg{UseLocale} = $FALSE; # **STRING 50 DISPLAY_IF {UseLocale}** # Site-wide locale - used by Foswiki and external programs such as grep, and to # specify the character set in which content must be presented for the user's # web browser. #en_US.ISO-8859-1 - Standard US ISO-8859-1 (default)de_AT.ISO-8859-15 - Austria with ISO-8859-15 for Euroru_RU.KOI8-R - Russiaja_JP.eucjp - Japan C - English only; no I18N features regarding character
# encodings and external programs.Foswiki supports different back-end store implementations.
# **SELECTCLASS Foswiki::Store::* ** # Store implementation. #Expert settings controlling compression of the generated HTML.
# **BOOLEAN** # Enable gzip/deflate page compression. Modern browsers can uncompress content # encoded using gzip compression. You will save a lot of bandwidth by compressing # pages. This makes most sense when enabling page caching as well as these are # stored in compressed format by default when {HttpCompress} is enabled. # Note that only pages without any 'dirty areas' will be compressed. Any other page # will be transmitted uncompressed. $Foswiki::cfg{HttpCompress} = $FALSE; #---++ HTML Page Layout #Expert setting controlling the layout of the generated HTML.
# **BOOLEAN** #{MergeHeadAndScriptZones} is provided to maintain compatibility with legacy extensions that use ADDTOHEAD to add <script> markup and require content that is now in the script zone.
Normally, dependencies between individual ADDTOZONE statements are resolved within each zone. However, if {MergeHeadAndScriptZones} is enabled, then head content which requires an id that only exists in script (and vice-versa) will be re-ordered to satisfy any dependency.
{MergeHeadAndScriptZones} will be removed from a future version of Foswiki.
Foswiki includes built-in support for caching HTML pages. This can # dramatically increase performance, especially if there are a lot more page # views than changes.
# The cache has a number of setup and tuning parameters. You should read # Page Caching on # foswiki.org (or your local copy of this page in the System web) before # enabling the cache. It is important that you read this topic carefully # as the cache also has some major disadvantages with respect to formatted # searches. # **BOOLEAN** # This setting will switch on/off caching. $Foswiki::cfg{Cache}{Enabled} = $FALSE; # **PATH DISPLAY_IF {Cache}{Enabled}** # Specify the directory where binary large objects will be stored. $Foswiki::cfg{Cache}{RootDir} = '$Foswiki::cfg{WorkingDir}/cache'; # **STRING 80 DISPLAY_IF {Cache}{Enabled}** # List of those topics that have a manual dependency on every topic # in a web. Web dependencies can also be specified using the WEBDEPENDENCIES # preference, which overrides this setting. $Foswiki::cfg{Cache}{WebDependencies} = 'WebRss, WebAtom, WebTopicList, WebIndex, WebSearch, WebSearchAdvanced'; # **REGEX DISPLAY_IF {Cache}{Enabled}** # Exclude topics that match this regular expression from the dependency # tracker. $Foswiki::cfg{Cache}{DependencyFilter} = '$Foswiki::cfg{SystemWebName}\..*|$Foswiki::cfg{TrashWebName}\..*|TWiki\..*'; # **SELECTCLASS Foswiki::PageCache::DBI::* DISPLAY_IF {Cache}{Enabled}** # Select the cache implementation. The default page cache implementation # is based on DBI (http://dbi.perl.org) which requires a working DBI driver to # connect to a database. This database will hold all cached data as well as the # maintenance data to keep the cache correct while content changes in the wiki. # Recommended drivers are DBD::mysql, DBD::Pg, DBD::SQLite or any other database driver connecting # to a real SQL engine. $Foswiki::cfg{Cache}{Implementation} = 'Foswiki::PageCache::DBI::Generic'; # **STRING 80 DISPLAY_IF {Cache}{Enabled} && /Foswiki::PageCache::DBI.*/.test({Cache}{Implementation}) ** # Prefix used naming tables and indexes generated in the database. $Foswiki::cfg{Cache}{DBI}{TablePrefix} = 'foswiki_cache'; # **STRING 80 DISPLAY_IF {Cache}{Enabled} && {Cache}{Implementation} == 'Foswiki::PageCache::DBI::Generic' ** # Generic database driver. See the docu of your DBI driver for the exact syntax of the DSN parameter string. $Foswiki::cfg{Cache}{DBI}{DSN} = ''; # **STRING 80 DISPLAY_IF {Cache}{Enabled} && {Cache}{Implementation} == 'Foswiki::PageCache::DBI::Generic' ** # Database user name. Add a value if your database needs authentication $Foswiki::cfg{Cache}{DBI}{Username} = ''; # **PASSWORD 80 DISPLAY_IF {Cache}{Enabled} && {Cache}{Implementation} == 'Foswiki::PageCache::DBI::Generic' ** # Database user password. Add a value if your database needs authentication $Foswiki::cfg{Cache}{DBI}{Password} = ''; # **STRING 80 DISPLAY_IF {Cache}{Enabled} && {Cache}{Implementation} == 'Foswiki::PageCache::DBI::SQLite'** # Name of the SQL $Foswiki::cfg{Cache}{DBI}{SQLite}{Filename} = '$Foswiki::cfg{WorkingDir}/sqlite.db'; # **STRING 80 DISPLAY_IF {Cache}{Enabled} && {Cache}{Implementation} == 'Foswiki::PageCache::DBI::MySQL' ** # Name or IP address of the database server $Foswiki::cfg{Cache}{DBI}{MySQL}{Host} = 'localhost'; # **STRING 80 DISPLAY_IF {Cache}{Enabled} && {Cache}{Implementation} == 'Foswiki::PageCache::DBI::MySQL' ** # Port on the database server to connect to $Foswiki::cfg{Cache}{DBI}{MySQL}{Port} = ''; # **STRING 80 DISPLAY_IF {Cache}{Enabled} && {Cache}{Implementation} == 'Foswiki::PageCache::DBI::MySQL' ** # Name of the database on the server host. $Foswiki::cfg{Cache}{DBI}{MySQL}{Database} = ''; # **STRING 80 DISPLAY_IF {Cache}{Enabled} && {Cache}{Implementation} == 'Foswiki::PageCache::DBI::MySQL' ** # Database user name. Add a value if your database needs authentication $Foswiki::cfg{Cache}{DBI}{MySQL}{Username} = ''; # **PASSWORD 80 DISPLAY_IF {Cache}{Enabled} && {Cache}{Implementation} == 'Foswiki::PageCache::DBI::MySQL' ** # Database user password. Add a value if your database needs authentication $Foswiki::cfg{Cache}{DBI}{MySQL}{Password} = ''; # **STRING 80 DISPLAY_IF {Cache}{Enabled} && {Cache}{Implementation} == 'Foswiki::PageCache::DBI::PostgreSQL' ** # Name or IP address of the database server $Foswiki::cfg{Cache}{DBI}{MySQL}{Host} = 'localhost'; # **STRING 80 DISPLAY_IF {Cache}{Enabled} && {Cache}{Implementation} == 'Foswiki::PageCache::DBI::PostgreSQL' ** # Port on the database server to connect to $Foswiki::cfg{Cache}{DBI}{PostgreSQL}{Port} = ''; # **STRING 80 DISPLAY_IF {Cache}{Enabled} && {Cache}{Implementation} == 'Foswiki::PageCache::DBI::PostgreSQL' ** # Name of the database on the server host. $Foswiki::cfg{Cache}{DBI}{PostgreSQL}{Database} = ''; # **STRING 80 DISPLAY_IF {Cache}{Enabled} && {Cache}{Implementation} == 'Foswiki::PageCache::DBI::PostgreSQL' ** # Database user name. Add a value if your database needs authentication $Foswiki::cfg{Cache}{DBI}{PostgreSQL}{Username} = ''; # **PASSWORD 80 DISPLAY_IF {Cache}{Enabled} && {Cache}{Implementation} == 'Foswiki::PageCache::DBI::PostgreSQL' ** # Database user password. Add a value if your database needs authentication $Foswiki::cfg{Cache}{DBI}{PostgreSQL}{Password} = ''; ############################################################################# #---+ Mail -- TABS #Settings controlling if and how Foswiki sends email, and the proxies used # to access external web pages.
#---++ Email general #Settings controlling if and how Foswiki handles email including the identity of the sender # and other expert settings controlling the email process.
# **BOOLEAN** # Enable email globally. Un-check this option to disable all outgoing # email from Foswiki $Foswiki::cfg{EnableEmail} = $TRUE; # **STRING 30** # Wiki administrator's e-mail address e.g.webmaster@example.com
# (used in %WIKIWEBMASTER%)
# NOTE: must be a single valid email address
$Foswiki::cfg{WebMasterEmail} = '';
# **STRING 30**
# Wiki administrator's name address, for use in mails (first name and
# last name, e.g. Fred Smith) (used in %WIKIWEBMASTERNAME%)
$Foswiki::cfg{WebMasterName} = 'Wiki Administrator';
# **BOOLEAN EXPERT**
# Remove IMG tags in notification mails.
$Foswiki::cfg{RemoveImgInMailnotify} = $TRUE;
# **STRING 20 EXPERT**
# Name of topic in each web that has notification registrations.
# If you change this setting you will have to
# use Foswiki to manually rename the topic in all existing webs
$Foswiki::cfg{NotifyTopicName} = 'WebNotify';
# **BOOLEAN EXPERT**
# Send email Date header using local "server time" instead of GMT
$Foswiki::cfg{Email}{Servertime} = $FALSE;
# **REGEX 80 EXPERT**
# This parameter is used to determine which Top Level domains are vaild
# when auto-linking email addresses. It is also used by UserRegistration to
# validate email addresses. Note, this parameter only controls
# matching of 3 character and longer TLDs. 2-character country codes and
# IP Address domains always permitted. See:
# Valid TLD's at http://data.iana.org/TLD/tlds-alpha-by-domain.txt
# Version 2012022300, Last Updated Thu Feb 23 15:07:02 2012 UTC
$Foswiki::cfg{Email}{ValidTLD} = qr(AERO|ARPA|ASIA|BIZ|CAT|COM|COOP|EDU|GOV|INFO|INT|JOBS|MIL|MOBI|MUSEUM|NAME|NET|ORG|PRO|TEL|TRAVEL|XXX)i;
#---++ Email server
# Settings to select the destination mail server or local email agent used for forwarding email.
# **SELECT Net::SMTP,Net::SMTP::SSL,MailProgram ** # Select the method Foswiki will use for sending email. On Unix/Linux hosts # "MailProgram" is generally acceptable. Otherwise choose one of the Email # methods required by your ISP or Email server. #Net::SMTP sends in cleartext.
# Net::SMTP::SSL sends using a secure encrypted connection.
# MailProgram uses the program configured below to send email.
# Authentication and encryption is done externally to Foswiki and the remainder of
# the below fields are not used.
#$Foswiki::cfg{Email}{MailMethod} = 'Net::SMTP';
# **COMMAND DISPLAY_IF {Email}{MailMethod} == 'MailProgram'**
# This needs to be a command-line program that accepts
# MIME format mail messages on standard input, and mails them.
$Foswiki::cfg{MailProgram} = '/usr/sbin/sendmail -t -oi -oeq';
# **BOOLEAN DISPLAY_IF /Net::SMTP/.test({Email}{MailMethod})**
# Set this option on to enable debug
# mode in SMTP. Output will go to the webserver error log.
$Foswiki::cfg{SMTP}{Debug} = 0;
# **STRING 30 DISPLAY_IF /Net::SMTP/.test({Email}{MailMethod})**
# Mail host for outgoing mail. This is only used if Net::SMTP is used.
# Examples: mail.your.company If the smtp server uses a different port
# than the default 25 # use the syntax mail.your.company:portnumber
# CAUTION This setting can be overridden by a setting of SMTPMAILHOST # in SitePreferences. Make sure you delete that setting if you are using a # SitePreferences topic from a previous release of Foswiki.
#For Gmail, set MailMethod to Net::SMTP::SSL, set MAILHOST to smtp.gmail.com:465 # and provide your gmail email address and password below for authentication.
$Foswiki::cfg{SMTP}{MAILHOST} = ''; # **STRING 30 DISPLAY_IF /Net::SMTP/.test({Email}{MailMethod})** # Mail domain sending mail, required. SMTP # requires that you identify the server sending mail. If not set, # Net::SMTP will guess it for you. Example: foswiki.your.company. # CAUTION This setting can be overridden by a setting of %SMTPSENDERHOST% # in SitePreferences. Make sure you delete that setting. $Foswiki::cfg{SMTP}{SENDERHOST} = ''; # **STRING 30 DISPLAY_IF /Net::SMTP/.test({Email}{MailMethod})** # Username for SMTP. Only required if your mail server requires authentication. If # this is left blank, Foswiki will not attempt to authenticate the mail sender. $Foswiki::cfg{SMTP}{Username} = ''; # **PASSWORD 30 DISPLAY_IF /Net::SMTP/.test({Email}{MailMethod})** # Password for your {SMTP}{Username}. $Foswiki::cfg{SMTP}{Password} = ''; #---++ S/MIME #Configure signing of outgoing email. (Secure/Multipurpose Internet Mail Extensions) # is a standard for public key encryption and signing of MIME encoded email messages. # Messages generated by the server will be signed using an X.509 certificate.
# **BOOLEAN** # Enable S/MIME signing. $Foswiki::cfg{Email}{EnableSMIME} = $FALSE; # **PATH DISPLAY_IF {Email}{EnableSMIME}** # Secure email certificate. If you want e-mail sent by Foswiki to be signed, # specify the filename of the administrator's X.509 certificate here. It # must be in PEM format. $Foswiki::cfg{Email}{SmimeCertificateFile} = '$Foswiki::cfg{DataDir}/cert.pem'; # **PATH DISPLAY_IF {Email}{EnableSMIME}** # Secure email certificate. If you want e-mail sent by Foswiki to be signed, # specify the filename of the administrator's X.509 private key here. It # must be in PEM format. Be sure that this file is only readable by the # Foswiki software; it must NOT be readable by users! $Foswiki::cfg{Email}{SmimeKeyFile} = '$Foswiki::cfg{DataDir}/key.pem'; #---++ Email test # IMPORTANT: Verify your configuration before enabling email or testing user registration, before attempting to register any users to Foswiki. # *TESTEMAIL* Marker used by bin/configure script - do not remove! #---+ Miscellaneous -- EXPERT #Miscellaneous expert options.
# **STRING 20** # 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!) $Foswiki::cfg{SystemWebName} = 'System'; # **STRING 20** # 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. $Foswiki::cfg{TrashWebName} = 'Trash'; # **STRING 20** # Name of the web used as a scratchpad or temporary workarea for users to # experiment with Foswiki topics. $Foswiki::cfg{SandboxWebName} = 'Sandbox'; # **STRING 20** # Name of site-level preferences topic in the {SystemWebName} web. # If you change this setting you will have to # use Foswiki and *manually* rename the existing topic. # (i.e. don't change it unless you are certain that you know what # you are doing!) $Foswiki::cfg{SitePrefsTopicName} = 'DefaultPreferences'; # **STRING 70** # Web.TopicName of the site-level local preferences topic. If this topic # exists, any settings in it will override settings in # {SitePrefsTopicName}.$name (the template name), $web
# (the web), and $skin (the skin).
# Finding the right template file is done by following the skin path, and for
# each skin path component following the template path.
# The first file on the skin path + template path that is found is taken to be
# the requested template file.
# See 'Security and usability' in System.SkinTemplates for advice on
# setting this path for increased security.
$Foswiki::cfg{TemplatePath} = '$Foswiki::cfg{TemplateDir}/$web/$name.$skin.tmpl, $Foswiki::cfg{TemplateDir}/$name.$skin.tmpl, $web.$skinSkin$nameTemplate, $Foswiki::cfg{SystemWebName}.$skinSkin$nameTemplate, $Foswiki::cfg{TemplateDir}/$web/$name.tmpl, $Foswiki::cfg{TemplateDir}/$name.tmpl, $web.$nameTemplate, $Foswiki::cfg{SystemWebName}.$nameTemplate';
# **STRING 120**
# List of protocols (URI schemes) that Foswiki will
# automatically recognize in absolute links.
# Add any extra protocols specific to your environment (for example, you might
# add '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.
$Foswiki::cfg{LinkProtocolPattern} = '(file|ftp|gopher|https|http|irc|mailto|news|nntp|telnet)';
# **BOOLEAN**
# 'Anchors' are positions within a Foswiki page that can be targeted in
# a URL using the #anchor syntax. The format of these anchors has
# changed several times. If this option is set, Foswiki will generate extra
# redundant anchors that are compatible with the old formats. If it is not
# set, the links will still work but will go to the head of the target page.
# There is a small performance cost for enabling this option. Set it if
# your site has been around for a long time, and you want existing external
# links to the internals of pages to continue to work.
$Foswiki::cfg{RequireCompatibleAnchors} = 0;
# **NUMBER**
# How many links to other revisions to show in the bottom bar. 0 for all
$Foswiki::cfg{NumberOfRevisions} = 4;
# **NUMBER**
# Set the upper limit of the maximum number of difference that will be
# displayed when viewing the entire history of a page. The compared revisions
# will be evenly spaced across the history of the page e.g. if the page has
# 100 revisions and we have set this option to 10, we will see differences
# between r100 and r90, r90 and r80, r80 and r70 and so on.
$Foswiki::cfg{MaxRevisionsInADiff} = 25;
# **NUMBER**
# 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).
$Foswiki::cfg{ReplaceIfEditedAgainWithin} = 3600;
# **NUMBER**
# 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)
# Since Foswiki 1.0.6, Foswiki pages that can be used to POST to the
# server have a validation key, that must be sent to the server for the
# post to succeed. These validation keys can only be used once, and expire
# at the same time as the lease expires.
$Foswiki::cfg{LeaseLength} = 3600;
# **NUMBER**
# 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.
$Foswiki::cfg{LeaseLengthLessForceful} = 3600;
# **PATH**
# 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 Foswiki data directory.
$Foswiki::cfg{MimeTypesFileName} = '$Foswiki::cfg{DataDir}/mime.types';
#############################################################################
#---+ Extensions -- TABS
#---++ Extension operation and maintenance
# name is the symbolic name of the repository e.g. Foswiki.orglisturl is the root of a view URLpuburl is the root of a download URLusername is the username if TemplateAuth is required on the repository (optional)password is the password if TemplateAuth is required on the repository (optional)?username=x;password=y
#
# For example,
# twiki.org=(http://twiki.org/cgi-bin/view/Plugins/,http://twiki.org/p/pub/Plugins/); foswiki.org=(http://foswiki.org/Extensions/,http://foswiki.org/pub/Extensions/);
# For Extensions with the same name in more than one repository, the last matching repository in the list will be chosen, so Foswiki.org should always be last in the list for maximum compatibility.
$Foswiki::cfg{ExtensionsRepositories} = 'Foswiki.org=(http://foswiki.org/Extensions/,http://foswiki.org/pub/Extensions/)';
# *FINDEXTENSIONS* Marker used by bin/configure script - do not remove!
#---+++ Enable or disable installed extensions
# *PLUGINS* Marker used by bin/configure script - do not remove!
# The plugins listed below were discovered by searching the @INC
# path for modules that match the Foswiki standard e.g.
# Foswiki/Plugins/MyPlugin.pm or the TWiki standard i.e.
# TWiki/Plugins/YourPlugin.pm Note that this list
# is only for Plugins. You cannot Enable/Disable Contribs, AddOns or Skins.
Any plugins enabled in the configuration but not found in the @INC
# path are listed at the end and are flagged as errors in the PluginsOrder check.