Upgrade your Tiki site | |
Upgrading Tiki is very similar to its installation. Upgrading is a one-way process. There is no way to downgrade, although you may revert to a previous version by restoring a backup. Before undertaking a major upgrade (e.g. from 21.x to 23.x) perform a test upgrade on a non-production site before proceeding with the real upgrade. Do I need to upgrade?
Major upgrades introduce new features, but existing features, themes, plugins and modules may not function as they did before. A test upgrade is strongly recommended. Overview: How an upgrade works
Other alternatives to FTP: Rather than downloading and re-uploading the whole package, use commands svn or wget (ask your hosting provider) to move the files directly from SourceForge to your server. |
1.1. About custom themes | |
Deactivate custom themes: custom themes and custom .tpl files from older versions are unlikely to work and may cause an upgrade failure. Deactivate custom themes by on your new install by changing the name of the active CSS file, so it will not be found by tiki - which causes it to revert to the default theme.
|
1.2. Determine to which version you want to upgrade to | |
Keep in mind that Tiki21 and Tiki24 are versions kept as Long Term Support (LTS) and that it's always safer to upgrade to the latest release in that branch. And it's always safer to use current stable branch in version x.1 (i.e. 21.1 instead of 21.0) if you are running production sites with extensive usage of many features.
|
1.3. Upgrade through fresh install or Install over existing? | |
Fresh install (recommended) | |
You will need to manually move and/or re-integrate any data that is not stored in the MySQL database, for example images and attachments saved as files. This is the recommended process, specially if you have a custom theme style, or one theme style not supported by the new tiki version you are going to use. |
Install over existing (NOT recommended for major updates) | |
This will not delete any Tiki file which was used in previous versions, but are not longer needed. These files shouldn't do anything except waste a bit of disk space, except for the case of template files (.tpl files under ./templates or subfolders). You can use Security Admin to detect leftover PHP files. This is not recommended because you are keeping all files from previous tiki versions, which may include old-fashioned tpl files, might conflict with the new version specially in theme styles which have changed or which are not supported any more in the new version of Tiki. That's why the best option to avoid any potential conflict is to install a new tiki on a new directory, and replace the old one with the new one, plus re-insert the custom files that you need (img/wiki_up, modified tpl files once you now that they are updated to the new Tiki version, etc). See below at "Fresh Install". If it's a minor release (21.1 to 21.2), it's unlikely to cause any issues because templates don't change much and there are just bug fixes. |
1.4. Create a Backup | |
You need to backup
See: Backup for details |
1.5. Update your files | |
Tiki files are distributed in a compressed archive (ex.: .zip). You need to unpack (unzip) the files and upload them to your web server. |
Fresh install | |
Instead of copying over your old files, you can make a fresh install. Things that you may need to copy from your old site to your new site:
In case you are upgrading but in a new server, and thus, you need to create a new database first, please ensure that you create your new database with utf8mb4 collation.
|
Install over existing | |
To upgrade, copy or upload all the files of the newer version onto the files of the older version so any older ones are replaced (FTP with "overwrite if source is newer"). Before overwriting the files, remove the non-customized style-specific templates (templates/styles/*, and templates/yoursite/* if any). Previous versions often contained per-style modifications. Those files have since been removed from standard distribution, leaving the old files intact and not taking advantage of enhancements. |
Updating via Git or SVN | |
If you install using Git or SVN, you can easily update with them. See Get Code |
1.6. Check permissions | |
1.6.1. File and Folder permissions | |
If your server is unhappy with Tiki file and folder permissions (this is dependent on server configuration), you may get an error message or blank pages. These failed attempts are typically in the error log (ask your web host to know where they are as it's different depending of your setup) Too few permissions
Too many permissions
If your permissions are currently at "777", use your FTP client to change the files to "755". If Tiki is installed in a directory, make sure to also change the permission of the folder which contains the tiki files. If you have shell access, you can run: Copy to clipboard
and answer any questions. If you don't know what to answer, just click "enter" to keep the defaults. Copy to clipboard
If "sh setup.sh" doesn't work for you, you may try, in your ./tiki/ directory Copy to clipboard
Another way is to set permissions for all directories and then set permissions for all files. For example, to set the permissions for all directories to 777 and the permissions for all files to 644, use the following separate commands through shell access: Copy to clipboard
After correcting any directory or file permission problems, visit tiki-install.php to continue. |
1.6.2. SuPHP Problems | |
Systems with SuPHP need permissions 755 at maximum. Group must not be allowed to write. This includes the complete path in the filesystem, not only document root of the webserver. Wrong permissions may lead to 500 Internal Server Error here. On the other hand less permissions (namely 750 without x/execute/subdir entry for webserver) may lead to 403 Forbidden Error. |
1.6.3. Permission Matrix | |||||||||||||||
Several usecases and minimum to maximum permissions you may try if something doesn't work properly. Permissions refer to data directly accessed by the webserver (files included by Tiki itself may and should have less permissions):
1.6.3.1. OptionCopy to clipboard
1.6.3.2. OptionThe following commands might be useful. In particular, it might help you use an IDE (PhpStorm), etc: Copy to clipboard
In English, the above code adds you to the web-server group; forces the tiki tree to be owned by the web-server user and group; and then makes sure the tiki tree is readable and writable by the web-server group (you). Suggestions welcome!
|
1.7. tiki-install.php to update your database | |
|
(A) Fresh install | |
On the |
(B) Install over existing | |
Then, go to tiki-install.php and click the "upgrade" button, which will update the database. Tiki can read your previous If the installer was previously locked (which it should be), you will need to unlock it by deleting |
Security choices during upgrade | |
There are a couple of important security choices during upgrade/installation as follows: Secure loginWhen configuring general settings during installation, there is an option to "Require secure (https) login". It is recommended to select this option so that data sent between the browser and the site server is kept private. In order to implement secure logins, in addition to selecting this option, you will need a security certificate and a dedicated IP address for your domain. These can be obtained or purchased from your web hosting company or, in the case of the security certificate, from third parties. Locking in the installerIn the last step of the installer, the installer is locked by default once you click the button to enter your Tiki. There is an option to elect to not lock the installer in that last step of the installation. It is highly recommended that you lock the installer for any production site. The option is provided for convenience for development sites only. The installer allows a user to change or destroy the site's database through the browser so it is very important to keep it locked once the installation or up |
Alternative: Upgrading your database through shell | |
[+] Upgrading your database manually through shell (faster than PHPMyAdmin) Assuming you have the command line version of PHP (PHP-CLI), you can simply use the command line version of the installer. Copy to clipboard
Copy to clipboard
Or: Copy to clipboard
|
1.7.1. Review the Upgrade | |
Hopefully you see the Upgrade Complete message and there may be a list of operations that failed (common for older versions). If these all say something about a column, row or table that doesn't exist, you can try ignoring it. Copy and paste the list of errors for future reference, check the ignore boxes and cross your fingers. When in doubt, refer your questions about upgrade errors to the friendly folk on the tiki-develop list. |
1.8. Post tiki-install.php | |
At the end, proceed as usual to the Tiki site while disabling the |
1.9. Update the .htaccess file | |
Tiki ships with a _htaccess file. It needs to be renamed to .htaccess and replace the one from the previous version. If you made any customizations, you should redo them in the new file. See: Apache Clean URLs |
1.10. Rebuild your search index | |
Go to the search control panel and rebuild your search index, and it's a good idea usually to clear your Tiki caches. You can find more details here |
1.11. Test | |
What to expect as problems | |
|
Where to look | |
Look in the release notes of your version for any specific things to look for, and to the documentation pages of each new release (i.e. Tiki24 LTS, Tiki25, Tiki26 LTS, ...) |
What to do | |
|
1.11.1. Check your content | |
Check if your new web site contains everything from the old website. |
1.11.2. Check that the features you used to use are still turned on. | |
More specifically, structures, search, individual plugins, and some other features may have to be activated in the admin panel. |
1.11.3. Revise potentially unsafe plugin calls and approve or reject them. | |
As of tiki 4, a new system of managing tiki plugins was added to require the authorization of some plugins. Potentially unsafe wiki plugins then had to be validated by users with the new permissions related to approving plugins. If you were using such plugins they will now not function until someone with sufficient permissions approves them. Now, any user that attempts to use a plugin, including iframe, dbreport, tag, sql, snarf, regex... which would need to be validated by some trusted users/editors/admins later on in order to approve or reject them. A list of plugin calls pending revision can be found at any time here: tiki-plugins.php |
1.12. Upgrade your Theme | |
Revise the notes at
For a more detailed description, read Styles and Themes |
Further help? | |
If you need further instructions, ask in the Chat or in the forums, and please, come back here and upgrade the documentation with what you learned. This is a way for you to help and make it easier for new users . Related pages
|
Notes for advanced users | |
symlinks | |
When you are happy with the result delete the directory structure of the old site and move the directory of the new site in place. In fact on GNU/Linux or other Unix based servers you can usually use a symlink instead, making the upgrade easy. Copy to clipboard
|
MultiTiki | |
If you manage many tiki sites in the same tiki instance ( MultiTiki ) but having them in subdirectories, you can follow also the instructions at the Manual Installation page. |
Updating via Git or SVN | |
If you have shell access and Git or SVN: dev:Get Code |
Tiki Manager | |
If you manage many instances, you should consider the Tiki Manager. |
Manual Upgrade | |
Please see: Manual Upgrade |
Upgrade from unmaintained versions | |
Please see: Upgrade from unmaintained versions |
Shell Commands for swapping versions around | |
Update 2016 - Got it working this time using the dotglob option
Copy to clipboard
|