Configuration

Also available in Deutsch, Française, Русский


for WackoWiki R6.1


1. primary settings

The detailed description of configuration file config.php


'base_url' => 'https://example.com/wiki/',
- the complete address or URL, where is located the Wiki
- if you prefer to use relative URL instead: '/wiki/', e.g. it should be called locally over the own network and over xyz.dyndns.org


'db_charset' => 'utf8mb4',
- sets the client character set


'db_driver' => 'mysqli_legacy',
- database driver name -> database PHP extension name
'mysqli_legacy' -> mysqli
'mysql_pdo' -> pdo


'db_host' => 'localhost',
- the name of host, on which is located DBMS (usually localhost)


'db_port' => '3306',
- Port for connection to the database, for MySQL will be used by default 3306


'db_name' => 'wacko',
- the name of the database


'db_user' => 'db_user',
- the name of the user of the database


'db_password' => 'mypassword',
- password to the data base


'db_collation' => 'utf8mb4_unicode_520_ci',
- The sort order for queries with the 'ORDER BY' clause shall be determined, so what criteria should be sorted.
– can be '0' or 'some charset'


'table_prefix' => 'wacko_',
- the prefix of the tables of the database


'system_seed' => '12345678901234567890',
- system seed


'recovery_password' => '',
- contains the password hash for the recovery password which can be generated with the action {{admin_recovery}} with Admin rights
- the recovery password is needed in order to log in admin panel
- without a specified password hash or a changed system_seed the access to the admin panel is not possible


'wacko_version' => '6.1',
- Wacko version (do not change, this should only be changed by upgrading wackwiki software!)

2. secondary settings

stored in config table


Changes in the secondary config can be done in two ways
  1. editing the config_value in the config table, e.g. via phpMyAdmin.
    • config_name config_value
      news_cluster News
    • Don't forget to delete the config cache (_cache/config/config.php) afterwards, e.g. via {{admincache}}
  2. the Admin panel

'xml_sitemap' => 0,
- '1' XML Sitemap on


'root_page' => 'HomeWiki',
- the WikiName name of the root page. It will become the root reference.


'wacko_name' => 'MyWackoWiki',
- the name of the Wiki- site


'session_store' => 1,
- Custom Session Storage: This option defines where the the session data is stored. By default either file or database session storage is selected.
1 - File (default)
2 - Database


'rewrite_mode' => 1,
- 'short, beautiful URL'
'1' - yes.
It should be used wherever possible. Search systems love short file names.
But it's only possible if the server is configured with mod_rewrite enabled. You can do this either in your Apache configuration file (httpd.conf) or with an .htaccess file (see ModRewrite)


'language' => 'en',
- language to default to: ru - Russian; en - English; fr - French and so on.


'theme' => 'default',
- theme, skin, template, the exterior appearance of Wacko. They lie at folder wacko/theme/
It is possible to change themes it and add new ones -- let us know if you feel your new theme deserve to be shared among all Wacko users.


'allow_themes' => '0',
'0' - all available themes are allowed (default)
'default,coffee' - here only these both themes are allowed


'allow_themes_per_page' => '0',
'0' - themes per page are not allowed (default)
'1' - allowed, Admin-Panel to enable


'show_spaces' => 1,
- to show spaces in WikiNames, e.g. MyName beeing displayed as My Name.


'default_typografica' => 1,
- to use built-in typographic correction
'1' - yes.


'paragrafica' => 1,
- to use built-in paragrafica
1 - yes.


'referrers_purge_time' => 1,
- the storage time of information about the references to this page (quantity of days)
'0' - the unlimited quantity of time.


'pages_purge_time' => 0,
- the storage time of the history of changes in the page.
'0' - the unlimited time. (default)
'1' - one day,
'90' - 90 days, etc.


'keep_deleted_time' => 0,
- the storage time of deleted pages if store_deleted_pages is active.
'0' - the unlimited time. (default)
'1' - one day,
'90' - 90 days, etc.


'edit_summary' => 0,
- shows change summary in the edit mode
'0' - disabled (default)
'1' - enabled
'2' - mandatory


'minor_edit' => 0,
- enables minor edit option in the edit mode
'0' - disabled (default)
'1' - enabled


'section_edit' => 0,
- Enables section editing in the edit mode. With section editing enabled, each headline starts a new section. When a page is writable a small edit link appears next to the headline. Using this link loads only this section into the editor.
'0' - disabled (default)
'1' - enabled


'hide_comments' => 0,
- to hide commentaries to the page.
'0' - no
'1' - yes, hide them from all users
'2' - yes, hide them from non-registered users


'hide_files' => 0,
- to hide files to the page.
'0' - no
'1' - yes, hide them from all users
'2' - yes, hide them from non-registered users


'debug' => 0,
- for debugging purposes. It will hardly be necessary for standard users, mainly useful for developers.
'0' - disabled
'1' - shows execution time and memory
'2' - with all the running processes of the script


'debug_admin_only' => 0,
'0' - disabled
'1' - debug only for admins


'debug_sql_threshold' => 0,
0 shows all SQL queries, 0.01 for instance only queries reaching the execution time threshold bigger than 0.01 seconds


'log_min_level' => 0,
'0' - disabled
'1' - critical : admin action, object deletion, suspected hacking attempt
'2' - highest: locking, acl change, unsuccessful user login
'3' - high: page renaming/moving/splitting/merging, user password change/reminder, successful user login
'4' - medium: page creation (settings change), file upload, pm sending, user registration and email activation, page ownership claim
'5' - low: comment posting, user logout
'6' - lowest: page edit, user settings update
'7' - debugging: everything, where logging is necessary


'youarehere_text' => ' ',
- This is for those people who dislike links to the same page.
- Try to 'youarehere_text' => '<b>####</b>', All links-to-self became not links, but bold text.


'hide_locked' => '1',
- Hide pages whose access is restricted. This setting causes these pages not to appear in various lists such as Recent Changes.
'1' - yes;
'0' - no, all pages are displayed, before the link to hidden pages appears a lock (for non-permitted pages) or a key (for permitted pages to indicate that access to this page is restricted)


'allow_rawhtml' => 0,
- to solve syntax for the insertion of arbitrary HTML-code.


'canonical' => 0,
Use fully canonical URLs
0 - URLs relative to the server root in the form /wiki should be preferred.
1 - All links are created as absolute URLs in the form https://example.com/wiki.


'urls_underscores' => 0,
- to form addresses (URLs) with underscores (for example, https://somewhere/Wiki_Page ).
- https://example.com/WackoWiki becomes https://example.com/Wacko_Wiki with this option


'default_write_acl' => '$',
- right for writing in the page, that is to say recording modifications. See admins rights


'default_read_acl' => '*',
- right for reading the page


'default_comment_acl' => '$',
- right for leaving commentaries about the page


'default_create_acl' => '$',
- right for creating new (sub)page


'default_upload_acl' => 'Admins',
- right for uploading files to the page


'default_rename_redirect' => 1,
- Once a page has been renamed, the original name as a page with links to the new page names?
'1' - yes;
'0' - no


'allow_registration' => 1,
'1' - everybody can, only '0', only admin can register / create new user


'standard_handlers' => 'acls|addcomment|claim|diff|edit|print|referrers|referrers_sites|remove|rename|revisions|revisions\.xml|show|watch|settings',
- the collection of processors (possibilities) for each page of your Wacko


'footer_comments' => 1,
- the presence of commentaries on the page
'1' - yes


'footer_files' => 0,
- the presence of the form of load it is file on the page
'1' - yes


'disable_tikilinks' => 0,
- Do not allow Wiki.Word to be link to /Wiki/Word


'disable_wikilinks' => 0,
- Do not allow WikiWord to be link to WikiWord
- more about the WackoFormatter...
'0' - WikiLinks enabled (default)
'1' - and your CamelCase Words will no longer be linked directly to a new page.


'remove_onlyadmins' => 0,
- only admins can DELETE pages.


'store_deleted_pages' => 1,
Stores a backup copy for deleted pages.
'0' - no
'1' - yes (default)

2.1. File uploads

'upload' => 'admins',
- right to the upload files
'admins' means that only users belonging to admins group can upload the files
'1' means that uploading is opened to registered users.
'0' means that upload disabled.


'upload_images_only' => 0,
- is possible to upload pictures?
'1' - yes
'0' - no


'upload_max_size' => 100,
- the maximum size of an unloaded file


'upload_banned_exts' => 'php|cgi|js|php|php3|php4|php5|pl|ssi|jsp|phtm|phtml|shtm|shtml|xhtm|xht|asp|aspx|htw|ida|idq|cer|cdx|asa|htr|idc|stm|printer|asax|ascx|ashx| asmx|axd|vdisco|rem|soap|config|cs|csproj|vb|vbproj|webinfo|licx|resx |resourches',
- files with given extensions are forbidden for uploading


'img_create_thumbnail' => 0,
Create thumbnail


'img_max_thumb_width' => 40,
Maximum thumbnail width in pixel
A generated thumbnail will not exceed the width set here.


'autosubscribe' => 0,
- to turns on automatic subscription author of page to the watching for this page
1 - yes.
One should leave the value of '1'. In this case it will be possible to receive notifications by email about changes in your pages.


'allow_gethostbyaddr' => 1,
- Allow or not to make IP -> hostname resolution (when anonymous edits
pages, Wacko stores info about his IP/hostname).


'multilanguage' => 0,
- the possibility of selecting the language used for interface from existing ones.
1 - yes.
If the value of '0', means language indicated as the default one will be used (see above)


'cache' => 0,
- '1' - activated;
- '0' - disabled (useful for development)
- uses the cache (cache to the generated pages providing a time). The page cache enables the pages of the wikis to load faster, because it is not necessary resources to the compilation of already generated pages to be used. All pages are without exception (on the server) cache.
In practice, there was this case: A wiki with the size grew from 1,400 pages to 10,000 after 3 days and need to install a total of 300 Mb space on the server. So you came quickly to the borders with the script and the space. It was therefore necessary to introduce cache function. To clean the cache, put a new page and write {{admincache}}. After saving the button appears to clean. This process can only be executed by administrators.


'cache_ttl' => 600,
– the period of validity of the cache's in seconds
After this period of this time, the file will be seen as as 'ineffective'. The file will be renewed (and in the cache) when the next data for the compilation of the corresponding page from the database.


'cache_sql' => 0,,
- Maintains a local cache of the results of certain resource-SQL-queries (_cache/queries).
'0' - off (default)
'1' - on


'cache_sql_ttl' => 600,,
- Cache results of SQL-queries for no more than the specified number of seconds. Using the values of more than 1200 is not desirable.
- '600' (default) 10 min
- '1200' (suggested max) 20 min


'rename_globalacl' => 'Admins',
– Permission to rename the entire cluster (all sub-pages)
“admins” only Administrators can rename the entire cluster
“0” – not possible, “1” – means any registered user, unless he is the owner of the page, can rename the whole cluster (ie, all sub-pages with rename)


'spam_filter' => 1
- spam_filter config parameter
- We load in the external antispam.conf file and then search the entire body content for each of the words defined as spam. If we find any then we return from the function, not saving the changes.


'pwd_min_chars' => 10,
- Minimum password length


'pwd_admin_min_chars' => 15,
- Minimum admin password length


'pwd_char_classes' => 0,
- The required password complexity
'0' - not tested
'1' - any letters + numbers
'2' - uppercase and lowercase + numbers
'3' - uppercase and lowercase + numbers + characters


'pwd_unlike_login' => 1,
- Additional complication
'0' - not tested
'1' - password is not identical to the login
'2' - password does not contain username


''enable_captcha' => 1,
- Captcha


'captcha_new_comment' => 1,


'captcha_new_page' => 1,


'captcha_edit_page' => 1,


'captcha_registration' => 1,


'date_format' => 'dd.MM.yyyy',
'time_format' => 'HH:mm',
'time_format_seconds' => 'HH:mm:ss',
'timezone' => 'UTC',
'name_date_macro' => '%s (%s)',
- see php:date for format local time/date
- Since R6.1.4 it uses the ICU Formats to format local time/date.


'referrer_policy' => 6
The Referrer-Policy HTTP header governs which referrer information, sent in the Referer header, should be included with requests made.
1 no-referrer - no referrer information is sent
2 no-referrer-when-downgrade - this is the default behavior if no policy is specified. It always passes the full path and will pass a value from HTTPS > HTTPS but not HTTPS > HTTP.
3 same-origin - sends the full path if it’s the same domain, but strips the value if going to another website
4 origin - sends the domain but not the full path
5 strict-origin - sends the domain for HTTPS > HTTPS and HTTP > HTTP, but not HTTPS > HTTP
6 origin-when-cross-origin - sends the full path when on the same domain, but only the domain when passing to another website
7 strict-origin-when-cross-origin - sends the full path if on the same domain and from one secure page to another, sends the domain if going from HTTPS on one domain to another domain, and doesn’t pass if going from a secure domain to an insecure domain
8 unsafe-url - sends the full path

2.2. Email settings

This information is used when the wiki sends emails to your users. Please ensure the email address you specify is valid, any bounced or undeliverable messages will likely be sent to that address. If your host does not provide a native (PHP based) email service you can instead send messages directly using SMTP. This requires the address of an appropriate server (ask your provider if necessary). If the server requires authentication (and only if it does) enter the necessary username, password and authentication method.


'enable_email' => 1
Enabling email


'enable_email_notification' => 1
Allow email notification. Set to ON to enable email notifications, OFF to disable them. Note that disabling email notifications has no effect on emails generated as part of the user signup process.


'phpmailer_method' => ''
The e-mail function used to send mails through PHP, using the Phpmailer class.

  1. mail
  2. sendmail
  3. smtp

'email_from' => ''
The sender name, part of "From:" header in emails for all the email-notification site.


'noreply_email' => ''
The No-reply address will appear in the From: email address field of all your email-notifications sent from the site,
e.g. noreply@example.com.


'admin_name' => 'WikiAdmin',
- WikiName of administrator, its login to enter the Wiki.


'admin_email' => 'admin@example.com',
- email of the administrator


'abuse_email' => 'admin@example.com'
Address requests for urgent matters: registration for a foreign email, etc. It may coincide with the previous.


'smtp_host' => ''
SMTP server address


'smtp_port' =>
Only change this if you know your SMTP server is on a different port. (default 25 or 587)


'smtp_connection_mode' => ''
Only used if a username/password is set, ask your provider if you are unsure which method to use.


'smtp_username' => ''
Only enter a username if your SMTP server requires it.


'smtp_password' => ''
Only enter a password if your SMTP server requires it.
Warning: This password will be stored as plain text in the database, visible to everybody who can access your database or who can view this configuration page.

3. constants

The detailed description of configuration file constants.php