tiki-check.php is a standalone script for server environment settings diagnostics before installing Tiki, or for an existing Tiki installation. While it was designed for Tiki, and it's bundled in Tiki, it is very useful for any PHP app, as it checks over 100 different things and provides contextual feedback. Started in 2012, this script has been refined over the years and it copes with all kinds of weird edge cases.
The standalone version will work with any version of Tiki, or even without Tiki.
Here is an example: http://demo.tiki.org/showcases_and_experiments/tiki-check.php
|Fieldset or section|
|MySQL Database Properties||Is MySQL suitable for Tiki?|
|MySQL crashed Tables||Is MySQL running smoothly?|
|Test sending e-mails||Can the system send emails?|
|Server Information||Operating system, web server, etc.|
|Server Properties||Available disk space|
|PHP scripting language properties||With tips about how to configure|
|Apache properties||With tips about how to configure|
|PHP security properties||With tips about how to configure|
|MySQL Variable Information||Outputs information about MySQL's configuration|
|PHP Info||Outputs information about PHP's configuration (full list)|
|Good||Will provide a smooth experience.|
|Safe||Recommended for a better experience.|
|Ugly||Not ideal but you'll likely be OK. If you notice issues, you should revisit.|
|Risky||Not need, perhaps it should be disabled.|
|Bad||Known to cause issues.|
|Info||This is typically for a setting that can be good in some cases, but bad in others.|
If you have a recent version of Tiki, just visit tiki-check.php
wget --output-document=tiki-check.php https://gitlab.com/tikiwiki/tiki/-/raw/master/tiki-check.php?inline=false
If you can use the file, make sure permissions are OK. Too few or too many permissions can cause issues.
If you enter incorrect DB-credentials, the script will fail with an ugly error message. We can't make this a nice error message, because we can't catch the exception, continue with the script and show the rest of the checks because we want to be PHP 4 compatible (and PHP 4 doesn't know exceptions which are the only way of error handling that PDO allows at connection time). So we fall back to the solution of setting the error_reporting all the way up and showing the error in this ugly way.
Tiki has been deployed in many scenarios over the years, and has a multitude of checks throughout the code (mostly in tiki-install.php and tiki-admin.php) to indicate to the admin if there is a problem with the server (ex.: memory_limit too low)
They are typically in the admin panel next to the relevant feature/setting. This is useful but without a central checklist of all of them when deploying on a new server (especially a server which has never been configured for web hosting), there can be a lot of back & forth to tweak all the settings. You are also forced to install Tiki to see what could be problematic. Instead, in a single file upload (tiki-check.php), we should have a clear report on everything that should be tweaked.
This is useful for fresh installs or if you are moving a Tiki instance from one server to another. This will also help when people report bugs (you can copy-paste this info in the bug tracker).
Before making this, existing solutions were researched and nothing came close to this. Thus, as far as we know, as of 2013, this is the most complete such solution.
For additional information, see Server Check.