Loading...
 
Skip to main content

History: Requirements

Preview of version: 287 (current)

Requirements

This page lists the minimum requirements and recommended settings to install Tiki.

See also Tiki's Lifecycle and Browser Compatibility.

If you are using a standard shared webhost, your webhost most likely meets these requirements and you should be able to install Tiki with no problems. Tiki is designed to run on shared hosting, using the LAMP stack.

These instructions are useful for people that are configuring their own server for Tiki.

 Tip
A Server Check script has been developed that will make everything easier! Just upload a single PHP file to your server before installing Tiki and you will get an advice on your server configuration.



Shared Host

Tiki will run in most shared webhost environments. Many hosts offer Tiki installation via a control panel application (such as Fantastico).

You should verify that your webhost meets the minimum requirements:


See Tiki Friendly Hosts for a list of working shared host environments.

Requirements

Webserver

You must have a fully operational webserver in order to install and use Tiki. Tiki should run on any webserver that supports PHP (such as nginx, Windows IIS or lighttpd), but is most widely tested and used with Apache. You may need to make minor modifications for non-Apache webservers.

Your webserver should be configured with the following minimum requirements:

  • 512 MB RAM
  • 100 MB free storage

Database MariaDB  MySQL

Tiki requires MariaDB, MySQL or Percona Server for MySQL.

We are moving to a machine readable format: https://gitlab.com/tikiwiki/tiki-manager/-/blob/master/config/tiki_requirements.yml

Tiki Version MariaDB Versions MySQL Versions Notes
Tiki28 10.5+ 8+
Tiki27 LTS 10.5+ 8+ MariaDB 10.2.2+ or MySQL 5.7+ are the versions where the InnoDB row format is by default Dynamic, required for some tables.
Tiki21 to Tiki26 5.5+ 5.7+ No known issues as of 2023-06-15
Tiki19 or Tiki20 5.5-10.4 5.5.3-5.7 MySQL 5.6+ or MariaDB 10.1+ are recommended. First version to support utf8mb4
Tiki18 LTS 5.1-10.4 5.0-5.7 MySQL 5.6+ or MariaDB 10.1+ are recommended as not all features will be available at lesser versions.
Tiki15 LTS 5.0-10.1 5.0-5.6 In Tiki 15+ Upgrade scripts in in MariaDB 10.1 / MySQL 5.6 may not work from earlier versions of Tiki.
Tiki12 LTS 5.1-5.5 5.0-5.5
Unable to load the jQuery Sortable Tables feature.


The database can be installed in the same physical location of the webserver (that is, as localhost) or Tiki can access a remote database.

PHP PHP


We are moving to a machine readable format: https://gitlab.com/tikiwiki/tiki-manager/-/blob/master/config/tiki_requirements.yml

Tiki Version Minimum PHP Version Maximum PHP Version Notes
Tiki28 8.1 8.4 Expected to be OK until PHP 9.0
Tiki27 LTS 8.1 8.4 Expected to be OK until PHP 9.0
Tiki26 8.1 8.1 (8.2 and 8.3 as Beta) Related: PHP 8
Tiki22, Tiki23, Tiki24 LTS and Tiki25 7.4 7.4
Tiki21 LTS 7.2 7.3 You can safely use 7.4 if you disregard or suppress the notices and warnings (They are indicating that certain things will no longer work in PHP 8.x).
Tiki19 or Tiki20 7.1 7.2 (maybe 7.3 as well) There is known issue with Tiki 20.2 where PHP requirement was bumped up to PHP 7.2 accidentally
Tiki18 LTS 5.6 7.2
Tiki15 LTS 5.5 5.6
Tiki12 LTS 5.3 5.6
Unable to load the jQuery Sortable Tables feature.


Interesting links about PHP lifecycle

Note on PHP Memory Limits:

The default memory_limit in a standard PHP installation is 128M, and this should be fine for the vast majority of Tiki installations. Some web hosts install PHP with a lower default. Although Tiki may appear to install successfully, you will continually face issues with pages failing to load and system errors.

To review your PHP Memory Limits, access http://www.example.com/tiki-phpinfo.php and review the following values:

  • max_execution_time = 60 ; Maximum execution time of each script, in seconds
  • max_input_time = 60 ; Maximum amount of time each script may spend parsing request data
  • memory_limit = 128M ; Maximum amount of memory a script may consume


For some shared webhosts, these values may not be user-configurable and you may need to request changes from your webhost, whereas in other hosts you are allowed to fine tune these settings for your needs. You can try uncommenting the corresponding lines in the .htaccess file at your tiki root folder on the server, like:

Copy to clipboard
# increase memory php_value memory_limit 128M # increase execution time... php_value max_execution_time 90

More information

Required PHP Functions

Some webhosts tend to disable some functions which are required for Tiki to run flawlessly.

Function Notes
eval() Required by Smarty templating engine.
Causes "Please contact support about" messages appearing instead of Modules when eval() is disabled in php.ini.
Unable to load the jQuery Sortable Tables feature.

Additional Libraries

Library Notes
libxml Required
DOM Required starting from Tiki 19
mbstring Useful when working with languages that require it
mbstring needs to be compiled with --enable-mbregex or otherwise you will be missing functions like mb_split() which are needed for example by Smarty.
Since Tiki 17, the symfony/polyfill-mbstring compatibility library (via symfony-console) is used in core functionality, but mbstring is still required for some functionality.
ctype Required
calendar Required
iconv Required by certain Zend Framework validation and parsing classes
MySQLi In Tiki 12+ MySQLI is recommended but the Tiki installer will fall back to the older MySQL driver if MySQLi is unavailable.
zip The ZipArchive class for php must be installed for some features such as XML Wiki Import-Export and PluginArchiveBuilder
Unable to load the jQuery Sortable Tables feature.

php.ini Configuration

We recommend using the following configuration in your php.ini file:

PHP.INI Setting Description
memory_limit = 128M Specify the maximum memory for PHP scripts.
_file_uploads = On Required to allow uploads (files, images, etc.) to your Tiki
upload_max_filesize = XXM
post_max_size
Specify the maximum upload filesize (in MB).
session.save_path = /tmp The directory where PHP stores session information (for the default handler (files)). Ensure that the location exists and is writable. In Shared Hosting environments, if you do not have access to /tmp, use temp (no slash) instead.
max_execution_time = 60
max_input_time = 60
Specify the idle timeout (in seconds). If you experience timeouts (such as when performing Admin functions) you may need to increase these settings.
default_charset = "utf-8" Specify the default character encoding.
mbstring.func_overload = 0 Tiki will not work properly with mbstring.func_overload = 7.
Unable to load the jQuery Sortable Tables feature.


The location of the php.ini file may vary, depending on your operating sytem. Some common locations include:

  • /etc/php.ini
  • /etc/php/php.ini
  • /etc/php5/apache2/php.ini (Debian)
  • /etc/php/7.x/apache2/php.ini
  • \windows\system\php.ini (Windows)

Optional Software or Libraries

Some Tiki features require the following additional software or libraries:

FeatureAdditional Requirements
Rewrite Tiki's default URLsUse the Apache Clean URLs to create shorter, or custom, URLs.
Elasticsearch See Elasticsearch page (requirements section)
Manticore Search See Manticore Search page (requirements section)

Tiki Manager

History

Advanced
Information Version
Marc Laporte 237
View
Jonny Bradley updated max php for 22.x and 23.x 236
View
Marc Laporte 235
View
Marc Laporte 234
View
Marc Laporte No requirement change between 22 and 23 233
View
Marc Laporte 232
View
Marc Laporte This will reduce pain 231
View
Marc Laporte 230
View
rjsmelo 229
View
Bernard Sfez / Tiki Specialist Updating infos for PHP and Tiki 22. Adding missing rows for MySQL. MySQL under 5.7 throw an error with Tiki 21. 228
View
luciash d' being 🧙 added nginx 227
View
luciash d' being 🧙 226
View
luciash d' being 🧙 225
View
luciash d' being 🧙 known issue note 224
View
Marc Laporte Supported means it generally works and we'll fix any bugs, which we will 223
View
drsassafras minor formatting 222
View
drsassafras fixing error again (hopefully) 221
View
drsassafras added MySQL exact version numbers 220
View
drsassafras 219
View
drsassafras 218
View
drsassafras Cleaned up tiki required extensions 217
View
drsassafras Removing outdated info. Can still access via history 216
View
drsassafras Table consistency 215
View
fatiki added php.ini location for Linux systems as of php v. 7 214
View
Yves Kipondo 213
View
drsassafras updated tiki 21 to php version 7.2 212
View
Philippe Cloutier oops, move my latest addition where it belongs 211
View
Philippe Cloutier Session storage location: better document 210
View
Philippe Cloutier PHP: document incompatibility between PHP 7.2 and Tiki 18 209
View
Marc Laporte 208
View
Marc Laporte 207
View
Marc Laporte AutoTOC 206
View
Marc Laporte Tiki 20 is in Beta and it didn't change 205
View
Philippe Cloutier Tiki 19 works with MariaDB 10.1 on my PC. 204
View
Philippe Cloutier There is no version of Maria DB inferior to 5 203
View
Philippe Cloutier no wonder why I couldn't align the img right... avoid having the image left so the list's indentation is stable. and actually have a list 202
View
Philippe Cloutier img Plugin modified by editor. 201
View
Philippe Cloutier img Plugin modified by editor. 200
View
Philippe Cloutier img Plugin modified by editor. 199
View
Bernard Sfez / Tiki Specialist Removing duplicate Alias (I never edited this page before unlike the lastmod pretend) 198
View
Bernard Sfez / Tiki Specialist Tiki19 is now released 197
View
luciash d' being 🧙 remarksbox Plugin modified by editor. 196
View
luciash d' being 🧙 195
View
Philippe Cloutier Database: add details 194
View
Philippe Cloutier announce Tiki 19 minimum 193
View
Philippe Cloutier Additional Libraries: add PHP DOM extension (discussed on https://sourceforge.net/p/tikiwiki/mailman/message/36367408/ ) 192
View
Philippe Cloutier Database: qualify level of support for MariaDB (considering issue #6544) 191
View
Philippe Cloutier mbstring: Mention symfony/polyfill-mbstring 190
View
Philippe Cloutier PHP: bump max supported version to 7.0 for Tiki 18 189
View
Philippe Cloutier Comment "session.save_handler = files", added in version 3 without explanation. This can have value "user" in Tiki 15. 188
View