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
Philippe Cloutier PHP: detail Tiki trunk maximum version (InterTiki still fails with PHP 7) 187
View
Jonny Bradley note about 17.x on php71 186
View
Marc Laporte As per https://doc.tiki.org/Tiki16#What_s_New 185
View
Marc Laporte Thanks Jonny! 184
View
Marc Laporte Restoring historical information to a new section, and moving Tiki 7-8-9 there 183
View
Marc Laporte 182
View
Marc Laporte If Tiki 17.x still has some issues with PHP 7.0, for sure Tiki 15.x will have even more 181
View
Marc Laporte Pretty sure Tiki 12.x and PHP 7.0 is looking for trouble 180
View
Marc Laporte 179
View
Marc Laporte Let's try 178
View
Marc Laporte 177
View
Marc Laporte Adding the Tiki19-20-21LTS round 176
View
Philippe Cloutier Database 175
View
Philippe Cloutier Edit restored by rescue script 2017-04-24T18:09:12+00:00 174
View
Philippe Cloutier Edit restored by rescue script 2017-04-24T18:09:12+00:00 173
View
Philippe Cloutier Edit restored by rescue script 2017-04-24T18:09:12+00:00 172
View
drsassafras spelling and grammer fixes 171
View
WizarDave added php requirement for Tiki16 170
View
Marc Laporte 169
View
Marc Laporte 168
View
Marc Laporte 167
View
Marc Laporte 166
View
Marc Laporte 165
View
Marc Laporte Great page! 164
View
lindon add iconv library as a requirement 163
View
Marc Laporte 162
View
Marc Laporte 161
View
Marc Laporte 160
View
luciash d' being 🧙 Fancy Table Plugin modified by editor. 159
View
Marc Laporte 158
View
Marc Laporte Now distinct page 157
View
Marc Laporte Good question Olivier 156
View
Marc Laporte 155
View
Marc Laporte 154
View
Marc Laporte 5.2 is old! 153
View
Marc Laporte 152
View
Marc Laporte 151
View
Marc Laporte 150
View
Marc Laporte 149
View
Marc Laporte 148
View
Marc Laporte Update with new policies 147
View
amette 146
View
amette 145
View
Rick Sapir / Tiki for Smarties 144
View
Marc Laporte 143
View
Marc Laporte 142
View
Marc Laporte 141
View
Marc Laporte 140
View
Marc Laporte 139
View
Marc Laporte 138
View