Table of Contents

Configuring DokuWiki

Many of DokuWiki's features can be configured through various config options. The easiest way to modify these options is using the Configuration Manager which allows wiki administrators to easily alter the wiki configuration settings online from the comfort of their favorite web browser.

To start the Configuration Manager log in as superuser and click the Admin button.

What can be configured

The “system” options of DokuWiki will be found in the conf/dokuwiki.php file. However this file contains the “default” values of the system. To customize it, you should edit the file conf/local.php or create it if it doesn't exist. To find what you can configure within that file, see the list of available options below.

User names, (encrypted) passwords and Access Control rules are stored in the users.auth.php and acl.auth.php files which can be found in the conf directory.

When uploading a new file within the mediamanager, you may encounter a “Upload denied. This file extension is forbidden!” message. This behavior is controlled within the conf/mime.conf file. To upload a new type of file, specify it within the mime.conf file.

Some automatic replacements are done when you edit your pages. Some generate tooltips, smileys or some special chars. This behavior is controlled by the acronyms.conf, smileys.conf or entities.conf.

Configuration files

All configuration files are to be found in the ./conf folder or /etc/dokuwiki when installed from a Debian package.

“Main files” usually ship with DokuWiki, whereas “local files” have to be created by the wiki admin.

If local files are supported you should use them instead of modifying the main files to avoid upgrade troubles.

main file local file type of config quick info
dokuwiki.php local.php
see below general wiki configuration
acronyms.conf acronyms.local.conf abbreviations automatic abbreviation hints
entities.conf entities.local.conf entities automatic text replacements
interwiki.conf interwiki.local.conf interwiki interwiki shortcut links
mime.conf mime.local.conf mime mime type settings for uploads
smileys.conf smileys.local.conf smileys image replacements
acl.auth.php see acl Access Control settings
users.auth.php see acl Users and passwords
license.php license.local.php license list of available licenses
scheme.conf scheme.local.conf urlschemes URL schemes to be recognized as links
mediameta.php exif Metadata editable for images
wordblock.conf wordblock.local.conf blacklist Spam blacklist
plugins.required.php plugins.local.php
see below Enabling/disabling plugins
userscript.js javascript Custom JavaScript enhancements
userstyle.css css Custom CSS enhancements

Theme configuration files

Additional configuration files are found in /var/lib/dokuwiki/lib/tpl/dokuwiki (Debian), e.g. style.ini. Style.ini is a text-file that is read by the default theme, and the user can configure e.g. the background-color.

Enabling/disabling plugins

Installed plugins are enabled by default. They could be disabled using the Extension Manager or Plugin Manager which writes to the plugins.local.php file. You can protect certain plugins by placing them in conf/plugins.protected.php.

By default DokuWiki loads its configuration files in the following order:

  1. conf/plugins.php – default plugins
  2. conf/plugins.local.php – changed by plugin manager
  3. conf/plugins.required.php – these core plugins cannot be controlled by plugin manager
  4. conf/plugins.protected.php – overrides setting in the other files

The loading order of configuration files is controlled by the global $config_cascade variable. By using a preload.php file you can change this behavior.

Configuration Options

Most of DokuWiki's features can be configured through various config options. The easiest way to modify these options is using the Configuration Manager.

The available settings are listed below. Their default values are stored in a file called conf/dokuwiki.php. If you want to modify a setting you should do this in a file called conf/local.php – this makes sure your special configs are not overwritten by a later upgrade. The config manager will use this file as well. The file conf/local.protected.php can be used for configuration settings which cannot be modified.

Here is a sample conf/local.php:

$conf['title']     = 'Admin\'s Wiki';
$conf['useacl']    = 1;
$conf['superuser'] = 'admin';

Some notes about the config file. The file is a piece of PHP code so the PHP syntax has to be preserved. E.g. each line has to have a semicolon at the end. There are multiple types of variables:

Available Options