xref: /dokuwiki/conf/dokuwiki.php (revision c7f6b7b7a4e54be385b5ea54ae0fe82abf57997b)
14dc4b499Smatthiasgrimm<?php
2f3f0262cSandi/**
3f3f0262cSandi * This is DokuWiki's Main Configuration file
4c29dc6e4SAndreas Gohr *
5c29dc6e4SAndreas Gohr * All the default values are kept here, you should not modify it but use
656ee9557SAndreas Gohr * a local.php file instead to override the settings from here.
7c29dc6e4SAndreas Gohr *
8f3f0262cSandi * This is a piece of PHP code so PHP syntax applies!
9f3f0262cSandi *
107cd0713eSAndreas Gohr * For help with the configuration and a more detailed explanation of the various options
11160b2db8SElan Ruusamäe * see https://www.dokuwiki.org/config
12f3f0262cSandi */
13f3f0262cSandi
14f3f0262cSandi
157cd0713eSAndreas Gohr/* Basic Settings */
16f3f0262cSandi$conf['title']       = 'DokuWiki';        //what to show in the title
177cd0713eSAndreas Gohr$conf['start']       = 'start';           //name of start page
187cd0713eSAndreas Gohr$conf['lang']        = 'en';              //your language
191cbac89cSAndreas Gohr$conf['template']    = 'dokuwiki';         //see lib/tpl directory
2091e90457SAnika Henke$conf['tagline']     = '';                //tagline in header (if template supports it)
2191e90457SAnika Henke$conf['sidebar']     = 'sidebar';         //name of sidebar in root namespace (if template supports it)
22066fee30SAndreas Gohr$conf['license']     = 'cc-by-nc-sa';     //see conf/license.php
237cd0713eSAndreas Gohr$conf['savedir']     = './data';          //where to store all the files
247cd0713eSAndreas Gohr$conf['basedir']     = '';                //absolute dir from serveroot - blank for autodetection
257cd0713eSAndreas Gohr$conf['baseurl']     = '';                //URL to server including protocol - blank for autodetect
267cd0713eSAndreas Gohr$conf['cookiedir']   = '';                //path to use in cookies - blank for basedir
277cd0713eSAndreas Gohr$conf['dmode']       = 0755;              //set directory creation mode
287cd0713eSAndreas Gohr$conf['fmode']       = 0644;              //set file creation mode
297cd0713eSAndreas Gohr$conf['allowdebug']  = 0;                 //allow debug output, enable if needed 0|1
307cd0713eSAndreas Gohr
317cd0713eSAndreas Gohr/* Display Settings */
32f3f0262cSandi$conf['recent']      = 20;                //how many entries to show in recent
337cd0713eSAndreas Gohr$conf['recent_days'] = 7;                 //How many days of recent changes to keep. (days)
34f3f0262cSandi$conf['breadcrumbs'] = 10;                //how many recent visited pages to show
3531e187f8SSean Coates$conf['youarehere']  = 0;                 //show "You are here" navigation? 0|1
367cd0713eSAndreas Gohr$conf['fullpath']    = 0;                 //show full path of the document or relative to datadir only? 0|1
379426a41aSAndreas Gohr$conf['typography']  = 1;                 //smartquote conversion 0=off, 1=doublequotes, 2=all quotes
38e656dcd4SAndreas Gohr$conf['dformat']     = '%Y/%m/%d %H:%M';  //dateformat accepted by PHPs strftime() function
397cd0713eSAndreas Gohr$conf['signature']   = ' --- //[[@MAIL@|@NAME@]] @DATE@//'; //signature see wiki page for details
407cd0713eSAndreas Gohr$conf['showuseras']  = 'loginname';       // 'loginname' users login name
417cd0713eSAndreas Gohr                                          // 'username' users full name
427cd0713eSAndreas Gohr                                          // 'email' e-mail address (will be obfuscated as per mailguard)
437cd0713eSAndreas Gohr                                          // 'email_link' e-mail address as a mailto: link (obfuscated)
449773c5edSjoe.lapp$conf['toptoclevel'] = 1;                 //Level starting with and below to include in AutoTOC (max. 5)
45851f2e89SAnika Henke$conf['tocminheads'] = 3;                 //Minimum amount of headlines that determines if a TOC is built
46f3f0262cSandi$conf['maxtoclevel'] = 3;                 //Up to which level include into AutoTOC (max. 5)
47f3f0262cSandi$conf['maxseclevel'] = 3;                 //Up to which level create editable sections (max. 5)
48f3f0262cSandi$conf['camelcase']   = 0;                 //Use CamelCase for linking? (I don't like it) 0|1
498a831f2bSAndreas Gohr$conf['deaccent']    = 1;                 //deaccented chars in pagenames (1) or romanize (2) or keep (0)?
50a77f5846Sjan$conf['useheading']  = 0;                 //use the first heading in a page as its name
517cd0713eSAndreas Gohr$conf['sneaky_index']= 0;                 //check for namespace read permission in index view (0|1) (1 might cause unexpected behavior)
527cd0713eSAndreas Gohr$conf['hidepages']   = '';                //Regexp for pages to be skipped from RSS, Search and Recent Changes
53f3f0262cSandi
547cd0713eSAndreas Gohr/* Authentication Settings */
55f3f0262cSandi$conf['useacl']      = 0;                //Use Access Control Lists to restrict access?
56cab2716aSmatthias.grimm$conf['autopasswd']  = 1;                //autogenerate passwords and email them to user
573094e817SAndreas Gohr$conf['authtype']    = 'authplain';      //which authentication backend should be used
589ec1015aSPhy$conf['passcrypt']   = 'bcrypt';           //Used crypt method (smd5,md5,sha1,ssha,crypt,mysql,my411,bcrypt)
59f3f0262cSandi$conf['defaultgroup']= 'user';           //Default groups new Users are added to
607651d633SGuy Brand$conf['superuser']   = '!!not set!!';    //The admin can be user or @group or comma separated list user1,@group1,user2
617651d633SGuy Brand$conf['manager']     = '!!not set!!';    //The manager can be user or @group or comma separated list user1,@group1,user2
62f5c6743cSAndreas Gohr$conf['profileconfirm'] = 1;             //Require current password to confirm changes to user profile
637cd0713eSAndreas Gohr$conf['rememberme'] = 1;                 //Enable/disable remember me on login
641d5856cfSAndreas Gohr$conf['disableactions'] = '';            //comma separated list of actions to disable
654c989037SChris Smith$conf['auth_security_timeout'] = 900;    //time (seconds) auth data is considered valid, set to 0 to recheck on every page view
66f5c6743cSAndreas Gohr$conf['securecookie'] = 1;               //never send HTTPS cookies via HTTP
67eb20307aSDominik Eckelmann$conf['remote']      = 0;                //Enable/disable remote interfaces
68160b2db8SElan Ruusamäe$conf['remoteuser']  = '!!not set!!';    //user/groups that have access to remote interface (comma separated). leave empty to allow all users
693df364a3STimo Richter$conf['remotecors']  = '';               //enable Cross-Origin Resource Sharing (CORS) for the remote interfaces. Asterisk (*) to allow all origins. leave empty to deny.
703ee5b583SAndreas Gohr
717cd0713eSAndreas Gohr/* Antispam Features */
727cd0713eSAndreas Gohr$conf['usewordblock']= 1;                //block spam based on words? 0|1
73aa8728f8SStarArmy$conf['relnofollow'] = 1;                //use rel="ugc nofollow" for external links?
747cd0713eSAndreas Gohr$conf['indexdelay']  = 60*60*24*5;       //allow indexing after this time (seconds) default is 5 days
757cd0713eSAndreas Gohr$conf['mailguard']   = 'hex';            //obfuscate email addresses against spam harvesters?
767cd0713eSAndreas Gohr                                         //valid entries are:
777cd0713eSAndreas Gohr                                         //  'visible' - replace @ with [at], . with [dot] and - with [dash]
787cd0713eSAndreas Gohr                                         //  'hex'     - use hex entities to encode the mail address
797cd0713eSAndreas Gohr                                         //  'none'    - do not obfuscate addresses
807cd0713eSAndreas Gohr$conf['iexssprotect']= 1;                // check for JavaScript and HTML in uploaded files 0|1
81039e19f5STom Hoover
827cd0713eSAndreas Gohr/* Editing Settings */
83ee4c4a1bSAndreas Gohr$conf['usedraft']    = 1;                //automatically save a draft while editing (0|1)
84f3f0262cSandi$conf['locktime']    = 15*60;            //maximum age for lockfiles (defaults to 15 minutes)
857cd0713eSAndreas Gohr$conf['cachetime']   = 60*60*24;         //maximum age for cachefile in seconds (defaults to a day)
867cd0713eSAndreas Gohr
877cd0713eSAndreas Gohr/* Link Settings */
887cd0713eSAndreas Gohr// Set target to use when creating links - leave empty for same window
897cd0713eSAndreas Gohr$conf['target']['wiki']      = '';
907cd0713eSAndreas Gohr$conf['target']['interwiki'] = '';
917cd0713eSAndreas Gohr$conf['target']['extern']    = '';
927cd0713eSAndreas Gohr$conf['target']['media']     = '';
937cd0713eSAndreas Gohr$conf['target']['windows']   = '';
947cd0713eSAndreas Gohr
957cd0713eSAndreas Gohr/* Media Settings */
967cd0713eSAndreas Gohr$conf['mediarevisions'] = 1;             //enable/disable media revisions
977cd0713eSAndreas Gohr$conf['refcheck']    = 1;                //check for references before deleting media files
987cd0713eSAndreas Gohr$conf['gdlib']       = 2;                //the GDlib version (0, 1 or 2) 2 tries to autodetect
997cd0713eSAndreas Gohr$conf['im_convert']  = '';               //path to ImageMagicks convert (will be used instead of GD)
1007cd0713eSAndreas Gohr$conf['jpg_quality'] = '70';             //quality of compression when scaling jpg images (0-100)
101894a80ccSAndreas Gohr$conf['fetchsize']   = 0;                //maximum size (bytes) fetch.php may download from extern, disabled by default
1027cd0713eSAndreas Gohr
1037cd0713eSAndreas Gohr/* Notification Settings */
1047cd0713eSAndreas Gohr$conf['subscribers'] = 0;                //enable change notice subscription support
1057cd0713eSAndreas Gohr$conf['subscribe_time'] = 24*60*60;      //Time after which digests / lists are sent (in sec, default 1 day)
1067cd0713eSAndreas Gohr                                         //Should be smaller than the time specified in recent_days
107f3f0262cSandi$conf['notify']      = '';               //send change info to this email (leave blank for nobody)
108a06e4bdbSSebastian Harl$conf['registernotify'] = '';            //send info about newly registered users to this email (leave blank for nobody)
109f3f0262cSandi$conf['mailfrom']    = '';               //use this email when sending mails
1105f43dcf4SLukas Rademacher$conf['mailreturnpath']    = '';         //use this email as returnpath for bounce mails
1115526795cSGuy Brand$conf['mailprefix']  = '';               //use this as prefix of outgoing mails
1122398a2b5SAndreas Gohr$conf['htmlmail']    = 1;                //send HTML multipart mails
113cad4fbf6SAndreas Gohr$conf['dontlog'] = 'debug';              //logging facilites that should be disabled
1147cd0713eSAndreas Gohr
1157cd0713eSAndreas Gohr/* Syndication Settings */
1168b9da5a7SAndreas Gohr$conf['sitemap']     = 0;                //Create a google sitemap? How often? In days.
11731f1284dSjoe.lapp$conf['rss_type']    = 'rss1';           //type of RSS feed to provide, by default:
11831f1284dSjoe.lapp                                         //  'rss'  - RSS 0.91
11931f1284dSjoe.lapp                                         //  'rss1' - RSS 1.0
12031f1284dSjoe.lapp                                         //  'rss2' - RSS 2.0
12131f1284dSjoe.lapp                                         //  'atom' - Atom 0.3
1224ab889eaSAndreas Gohr                                         //  'atom1' - Atom 1.0
12392e52d8dSjoe.lapp$conf['rss_linkto'] = 'diff';            //what page RSS entries link to:
12492e52d8dSjoe.lapp                                         //  'diff'    - page showing revision differences
12592e52d8dSjoe.lapp                                         //  'page'    - the revised page itself
12692e52d8dSjoe.lapp                                         //  'rev'     - page showing all revisions
12792e52d8dSjoe.lapp                                         //  'current' - most recent revision of page
128b5a0be43SAdrian Lang$conf['rss_content'] = 'abstract';       //what to put in the items by default?
1294ab889eaSAndreas Gohr                                         //  'abstract' - plain text, first paragraph or so
1304ab889eaSAndreas Gohr                                         //  'diff'     - plain text unified diff wrapped in <pre> tags
1314ab889eaSAndreas Gohr                                         //  'htmldiff' - diff as HTML table
1324ab889eaSAndreas Gohr                                         //  'html'     - the full page rendered in XHTML
133a7c93226SAndreas Gohr$conf['rss_media']   = 'both';           //what should be listed?
134a7c93226SAndreas Gohr                                         //  'both'     - page and media changes
135a7c93226SAndreas Gohr                                         //  'pages'    - page changes only
136a7c93226SAndreas Gohr                                         //  'media'    - media changes only
1375dae719cSAdrian Lang$conf['rss_update'] = 5*60;              //Update the RSS feed every n seconds (defaults to 5 minutes)
138a1716312SMarc Mayfield$conf['rss_show_summary'] = 1;           //Add revision summary to title? 0|1
1397b299f22SAurélien Martin$conf['rss_show_deleted'] = 1;           //Show deleted items 0|1
1407cd0713eSAndreas Gohr
1417cd0713eSAndreas Gohr/* Advanced Settings */
1427cd0713eSAndreas Gohr$conf['updatecheck'] = 1;                //automatically check for new releases?
1437cd0713eSAndreas Gohr$conf['userewrite']  = 0;                //this makes nice URLs: 0: off 1: .htaccess 2: internal
1447cd0713eSAndreas Gohr$conf['useslash']    = 0;                //use slash instead of colon? only when rewrite is on
1457cd0713eSAndreas Gohr$conf['sepchar']     = '_';              //word separator character in page names; may be a
1467cd0713eSAndreas Gohr                                         //  letter, a digit, '_', '-', or '.'.
1477cd0713eSAndreas Gohr$conf['canonical']   = 0;                //Should all URLs use full canonical http://... style?
1487cd0713eSAndreas Gohr$conf['fnencode']    = 'url';            //encode filenames (url|safe|utf-8)
1497cd0713eSAndreas Gohr$conf['autoplural']  = 0;                //try (non)plural form of nonexisting files?
1507cd0713eSAndreas Gohr$conf['compression'] = 'gz';             //compress old revisions: (0: off) ('gz': gnuzip) ('bz2': bzip)
1517cd0713eSAndreas Gohr                                         //  bz2 generates smaller files, but needs more cpu-power
1527cd0713eSAndreas Gohr$conf['gzip_output'] = 0;                //use gzip content encodeing for the output xhtml (if allowed by browser)
1537cd0713eSAndreas Gohr$conf['compress']    = 1;                //Strip whitespaces and comments from Styles and JavaScript? 1|0
1547a964318SAndreas Gohr$conf['cssdatauri']  = 512;              //Maximum byte size of small images to embed into CSS, won't work on IE<8
1557cd0713eSAndreas Gohr$conf['send404']     = 0;                //Send a HTTP 404 status for non existing pages?
156cde6a01bSAndreas Gohr$conf['broken_iua']  = 0;                //Platform with broken ignore_user_abort (IIS+CGI) 0|1
1579a87c72aSAndreas Gohr$conf['xsendfile']   = 0;                //Use X-Sendfile (1 = lighttpd, 2 = standard)
158d968d3e5SChris Smith$conf['renderer_xhtml'] = 'xhtml';       //renderer to use for main page generation
1597cd0713eSAndreas Gohr$conf['readdircache'] = 0;               //time cache in second for the readdir operation, 0 to deactivate.
16013ce475dSAndreas Gohr$conf['search_nslimit'] = 0;             //limit the search to the current X namespaces
16113ce475dSAndreas Gohr$conf['search_fragment'] = 'exact';      //specify the default fragment search behavior
162*c7f6b7b7SZebra North
163*c7f6b7b7SZebra North$conf['trustedproxy'] = ['::1', 'fe80::/10', '127.0.0.0/8', '10.0.0.0/8', '172.16.0.0/12', '192.168.0.0/16'];
164*c7f6b7b7SZebra North                                         // Trusted proxy servers from which to read the X-Forwarded-For header.
165*c7f6b7b7SZebra North                                         // Each item in the array may be either an IPv4 or IPv6 address, or
166*c7f6b7b7SZebra North                                         // an IPv4 or IPv6 CIDR range (e.g. 10.0.0.0/8).
167*c7f6b7b7SZebra North
168*c7f6b7b7SZebra North$conf['realip'] = false;                 // Enable reading the X-Real-IP header.  Default: false.
169*c7f6b7b7SZebra North                                         // Only enable this if your server writes this header, otherwise it may be spoofed.
170f3f0262cSandi
171fc6b11d2SMichael Große/* Feature Flags */
172fc6b11d2SMichael Große$conf['defer_js'] = 1;                   // Defer javascript to be executed after the page's HTML has been parsed. Setting will be removed in the next release.
173be6462f4SAndreas Gohr$conf['hidewarnings'] = 0;               // Hide warnings
174fc6b11d2SMichael Große
1757cd0713eSAndreas Gohr/* Network Settings */
17622ef1e32SAndreas Gohr$conf['dnslookups'] = 1;                 //disable to disallow IP to hostname lookups
17761537d47SAndreas Gohr$conf['jquerycdn']  = 0;                 //use a CDN for delivering jQuery?
17894de3b7aSAndreas Gohr// Proxy setup - if your Server needs a proxy to access the web set these
17994de3b7aSAndreas Gohr$conf['proxy']['host']    = '';
18094de3b7aSAndreas Gohr$conf['proxy']['port']    = '';
18194de3b7aSAndreas Gohr$conf['proxy']['user']    = '';
18294de3b7aSAndreas Gohr$conf['proxy']['pass']    = '';
183506fa893SAndreas Gohr$conf['proxy']['ssl']     = 0;
1847aeda574SAndreas Gohr$conf['proxy']['except']  = '';
185