Difference between revisions of "System Health Status"
(→MySQL Server Configuration Check) |
|||
(17 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | The '''System Health Status''' page provides an overview of the WHMCS installation and system environment status. | + | The '''System Health Status''' page provides an overview of the WHMCS installation and system environment status. It will highlight any potential configuration or security related issues that may need your attention. It also allows you to check if any updates are available for your currently installed WHMCS version, as well as providing quick and easy access to the Changelog and Release Notes for it. |
− | + | You can find this feature at '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Health''' . | |
− | |||
− | |||
==The Checks== | ==The Checks== | ||
Line 9: | Line 7: | ||
[[File:SystemHealthStatusPage.png|thumb|System Health Status Page]]An overview of the checks performed and the purpose of each is provided below. | [[File:SystemHealthStatusPage.png|thumb|System Health Status Page]]An overview of the checks performed and the purpose of each is provided below. | ||
− | + | === System Cron Tasks === | |
Checks that the system cron has run to completion within the last 24 hours. If this reports a failure, it indicates that either the cron is not running (invalid cron command, file permissions, cron folder path, etc.) or that the cron is failing to complete successfully. | Checks that the system cron has run to completion within the last 24 hours. If this reports a failure, it indicates that either the cron is not running (invalid cron command, file permissions, cron folder path, etc.) or that the cron is failing to complete successfully. | ||
− | If this check reports a problem, you should begin by checking your cron command configuration and the activity log within WHMCS. | + | If this check reports a problem, you should begin by checking your cron command configuration and the activity log within WHMCS. For more information, see [https://help.whmcs.com/m/troubleshooting/l/757222-resolving-attention-items-on-the-system-health-status-page#system_cron_tasks our troubleshooting documentation]. |
− | For further assistance, | + | For further assistance, contact our support team. |
− | + | === Cron PHP Version Mismatch === | |
Many server configurations utilize a separate php.ini file in the command line or cron engine than the web server uses. This can sometimes cause issues when different configurations are used in two places. | Many server configurations utilize a separate php.ini file in the command line or cron engine than the web server uses. This can sometimes cause issues when different configurations are used in two places. | ||
Line 23: | Line 21: | ||
This warning identifies if automation tasks are being executed under different PHP versions to that being used to visit the admin area via a browser. | This warning identifies if automation tasks are being executed under different PHP versions to that being used to visit the admin area via a browser. | ||
− | + | For steps to resolve this issue on a stock cPanel & WHM server, see [https://help.whmcs.com/m/automation/l/969680-identifying-the-php-ini-used-for-in-command-line-cron-engine our help documentation]. | |
− | + | For more help, contact your system administrator or hosting provider. | |
<div class="docs-alert-info"> | <div class="docs-alert-info"> | ||
Line 31: | Line 29: | ||
</div> | </div> | ||
− | + | === Insecure Permissions Check === | |
+ | |||
+ | This check ensures that key files and directories have the appropriate permissions. It will alert you to ownership mismatches or permission levels that are higher than are necessary for day-to-day operation of the system. | ||
+ | |||
+ | For most WHMCS installations, we recommend the following permissions: | ||
− | + | <table class="table table-striped table-condensed"> | |
+ | <tr><th>File or Directory</th><th><tt>chmod</tt> Permission</th></tr> | ||
+ | <tr><td><tt>configuration.php</tt></td><td>400 (Readable)</td></tr> | ||
+ | <tr><td><tt>/attachments</tt></td><td>777 (Writeable)</td></tr> | ||
+ | <tr><td><tt>/downloads</tt></td><td>777 (Writeable)</td></tr> | ||
+ | <tr><td><tt>/templates_c</tt></td><td>777 (Writeable)</td></tr> | ||
+ | <tr><td><tt>All other files</tt></td><td>644 (Owner writeable, otherwise readable)</td></tr> | ||
+ | <tr><td><tt>All other directories</tt></td><td>755 (Owner writeable, otherwise readable and executable)</td></tr> | ||
+ | </table> | ||
− | + | <div class="docs-alert-warning"> | |
+ | <span class="title">PHP</span><br /> | ||
+ | * This does not apply to installations using suPHP or phpSuExec. | ||
+ | * If you use DSO as your PHP handler, you '''must''' use <tt>644</tt> permissions. | ||
+ | </div> | ||
− | + | For more information, see [https://help.whmcs.com/m/troubleshooting/l/757222-resolving-attention-items-on-the-system-health-status-page#permissions_check our help documentation]. | |
− | + | === Required PHP Extensions === | |
− | + | This check detects your configured PHP extensions and lists any missing extensions that WHMCS requires in order to function. | |
− | + | If you see any extensions here, add those extensions to your PHP configuration and recompile PHP. | |
− | + | === Recommended PHP Extensions === | |
+ | |||
+ | Checks for the presence of recommended PHP extensions. While not strictly required, this will alert you to any extensions which are not available in your environment that are either required by certain addons or modules or that can help provide improved performance. Detailed in our help guide [https://help.whmcs.com/m/troubleshooting/l/690502-resolving-warnings-on-the-system-health-status-page#recommended_php_extensions here] we recommend recompiling PHP with the missing extensions listed. | ||
+ | |||
+ | === Required PHP Functions === | ||
Checks for any PHP functions that are required for WHMCS to operate and will alert you to any that are disabled. If you see any functions reported here, you should check for the presence of them in the ''php.ini'' configuration file '''disable_functions''' setting and remove them. | Checks for any PHP functions that are required for WHMCS to operate and will alert you to any that are disabled. If you see any functions reported here, you should check for the presence of them in the ''php.ini'' configuration file '''disable_functions''' setting and remove them. | ||
− | + | === PHP Memory Limit === | |
+ | |||
+ | Checks the memory limit setting in your PHP environment and will alert you when it is too low. Will alert you by way of a failure level alert when below the minimum required value and a warning level alert when above the minimum but below the recommended value. | ||
+ | |||
+ | For more details on the required memory limit, see [[System Requirements]]. | ||
− | + | === Error Reporting === | |
− | ''' | + | This check alerts you if '''Display Errors''' is enabled in the '''Other''' tab at '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > [[General Settings]]'''. |
− | + | '''Display Errors''' is useful for development and debugging situations. For security reasons, we '''strongly''' recommend disabling it whenever you are not actively troubleshooting an issue. | |
− | + | === PHP Error Levels === | |
− | Alerts you if the error reporting level is set to a very high level. We recommend only logging certain error types, as detailed [https://help.whmcs.com/m/troubleshooting/l/757222-resolving-attention-items-on-the-system-health-status-page#display_errors here] | + | Alerts you if the error reporting level is set to a very high level. We recommend only logging certain error types, as detailed [https://help.whmcs.com/m/troubleshooting/l/757222-resolving-attention-items-on-the-system-health-status-page#display_errors here]. |
− | + | === PHP Version === | |
− | Checks your PHP | + | Checks your PHP version. Will alert you if your current PHP version has reached End of Life and is no longer supported by the PHP Group. |
− | + | === Customising Default Paths === | |
Checks for the existance of custom directory paths. You can customise some of the default directory paths in WHMCS to make it more difficult for malicious users to find them. This check will alert you if any directories that support customisation have not been customised. Please see [https://help.whmcs.com/m/troubleshooting/l/690502-resolving-warnings-on-the-system-health-status-page#custom_templates this] helpful documentation about this. | Checks for the existance of custom directory paths. You can customise some of the default directory paths in WHMCS to make it more difficult for malicious users to find them. This check will alert you if any directories that support customisation have not been customised. Please see [https://help.whmcs.com/m/troubleshooting/l/690502-resolving-warnings-on-the-system-health-status-page#custom_templates this] helpful documentation about this. | ||
− | + | === Using Default Templates === | |
Alerts you if any template settings are set to a template of a default name which could be an indication of customisations having been made to a default template. This can result in customisations being lost at the time of the next upgrade. Please see [https://help.whmcs.com/m/troubleshooting/l/690502-resolving-warnings-on-the-system-health-status-page#custom_templates this] helpful documentation about this. | Alerts you if any template settings are set to a template of a default name which could be an indication of customisations having been made to a default template. This can result in customisations being lost at the time of the next upgrade. Please see [https://help.whmcs.com/m/troubleshooting/l/690502-resolving-warnings-on-the-system-health-status-page#custom_templates this] helpful documentation about this. | ||
− | + | === Installed cURL Version === | |
Checks the installed curl version and alerts you if your version is known to have any vulnerabilities. More information available [https://help.whmcs.com/m/troubleshooting/l/690502-resolving-warnings-on-the-system-health-status-page#curl_tls_openssl_version_warnings here] | Checks the installed curl version and alerts you if your version is known to have any vulnerabilities. More information available [https://help.whmcs.com/m/troubleshooting/l/690502-resolving-warnings-on-the-system-health-status-page#curl_tls_openssl_version_warnings here] | ||
− | + | === SSL Support in cURL === | |
Checks to ensure that the curl library present in the PHP environment has SSL support which is required for normal WHMCS operation and many of the modules which come with WHMCS. | Checks to ensure that the curl library present in the PHP environment has SSL support which is required for normal WHMCS operation and many of the modules which come with WHMCS. | ||
− | + | === PHP Session Support === | |
− | + | This check displays common issues with your PHP environment's session configuration. For more information to resolve this issue, see [https://help.whmcs.com/m/troubleshooting/l/757222-resolving-attention-items-on-the-system-health-status-page#php-session-support-is-disabled Resolving Items on the System Health Status Page]. | |
− | |||
− | |||
− | |||
− | + | === Secure TLS Support in cURL === | |
Checks to ensure that the curl library present in the PHP environment supports secure TLS versions (TLS v1.1 and v1.2). With many payment vendors phasing out legacy SSL/TLS protocols in accordance with PCI DSS recommendations, this check will help to stay up to date with newer standards. | Checks to ensure that the curl library present in the PHP environment supports secure TLS versions (TLS v1.1 and v1.2). With many payment vendors phasing out legacy SSL/TLS protocols in accordance with PCI DSS recommendations, this check will help to stay up to date with newer standards. | ||
− | + | === MySQL Server Configuration Check === | |
<div class="docs-alert-info"> | <div class="docs-alert-info"> | ||
Line 104: | Line 123: | ||
max_allowed_packet < 4194304 (or 4MB) | max_allowed_packet < 4194304 (or 4MB) | ||
− | These values are for guidance only | + | These values are for guidance only and higher limits may be necessary on low-powered or heavily-loaded servers. For assistance with your MySQL server configuration, contact your hosting provider or system administrator. |
+ | |||
+ | === CloudFlare® Proxy Check === | ||
+ | |||
+ | <div class="docs-alert-info"> | ||
+ | We added this check in WHMCS 8.10. | ||
+ | </div> | ||
+ | |||
+ | This check indicates whether WHMCS detected that you are using CloudFlare. A warning displays if there is a misconfiguration in your settings for trusted proxies. | ||
+ | |||
+ | If you see a warning message, click the link to automatically adjust your trusted proxy settings. | ||
− | + | === CloudLinux™ MySQL Extension Check === | |
<div class="docs-alert-info"> | <div class="docs-alert-info"> | ||
Line 117: | Line 146: | ||
For help to resolve this problem, see CloudLinux's [https://docs.cloudlinux.com/lve_manager/#php-selector-client-plugin PHP Selector documentation] or contact your server administrator. | For help to resolve this problem, see CloudLinux's [https://docs.cloudlinux.com/lve_manager/#php-selector-client-plugin PHP Selector documentation] or contact your server administrator. | ||
+ | |||
+ | === Support Ticket Mask Check === | ||
+ | |||
+ | <div class="docs-alert-info"> | ||
+ | We added this check in WHMCS 8.3. | ||
+ | </div> | ||
+ | |||
+ | Checks the amount of possible ticket numbers that the system can create and the percentage that it has already used. The system bases this on your '''[[Support_Tab#Support_Ticket_Mask_Format|Support Ticket Mask Format]]''' setting in the '''[[Support Tab|Support]]''' tab at '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > General Settings'''. | ||
+ | |||
+ | To resolve this issue, adjust the '''Support Ticket Mask Format''' setting to allow more possible ticket number combinations. | ||
+ | |||
+ | === Event Handling === | ||
+ | |||
+ | <div class="docs-alert-info"> | ||
+ | We added this check in WHMCS 8.4. | ||
+ | </div> | ||
+ | |||
+ | Checks for proper execution of event handling jobs like the Create, Terminate, and other actions for WHMCS's provisioning modules. If the check detects problems, consider changing the '''Event Handling''' setting in the '''[[Other Tab|Other]]''' tab at '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > General Settings'''. | ||
+ | |||
+ | === System URL Check === | ||
+ | |||
+ | <div class="docs-alert-info"> | ||
+ | We added this check in WHMCS 8.8. | ||
+ | </div> | ||
+ | |||
+ | Checks whether you have set '''WHMCS System URL''' in the '''[[General_Tab|General]]''' tab at '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > [[General Settings]]'''. If possible, WHMCS attempts to set this value automatically during installation. |
Latest revision as of 18:11, 3 April 2024
The System Health Status page provides an overview of the WHMCS installation and system environment status. It will highlight any potential configuration or security related issues that may need your attention. It also allows you to check if any updates are available for your currently installed WHMCS version, as well as providing quick and easy access to the Changelog and Release Notes for it.
You can find this feature at Configuration () > System Health .
Contents
- 1 The Checks
- 1.1 System Cron Tasks
- 1.2 Cron PHP Version Mismatch
- 1.3 Insecure Permissions Check
- 1.4 Required PHP Extensions
- 1.5 Recommended PHP Extensions
- 1.6 Required PHP Functions
- 1.7 PHP Memory Limit
- 1.8 Error Reporting
- 1.9 PHP Error Levels
- 1.10 PHP Version
- 1.11 Customising Default Paths
- 1.12 Using Default Templates
- 1.13 Installed cURL Version
- 1.14 SSL Support in cURL
- 1.15 PHP Session Support
- 1.16 Secure TLS Support in cURL
- 1.17 MySQL Server Configuration Check
- 1.18 CloudFlare® Proxy Check
- 1.19 CloudLinux™ MySQL Extension Check
- 1.20 Support Ticket Mask Check
- 1.21 Event Handling
- 1.22 System URL Check
The Checks
An overview of the checks performed and the purpose of each is provided below.System Cron Tasks
Checks that the system cron has run to completion within the last 24 hours. If this reports a failure, it indicates that either the cron is not running (invalid cron command, file permissions, cron folder path, etc.) or that the cron is failing to complete successfully.
If this check reports a problem, you should begin by checking your cron command configuration and the activity log within WHMCS. For more information, see our troubleshooting documentation.
For further assistance, contact our support team.
Cron PHP Version Mismatch
Many server configurations utilize a separate php.ini file in the command line or cron engine than the web server uses. This can sometimes cause issues when different configurations are used in two places.
This warning identifies if automation tasks are being executed under different PHP versions to that being used to visit the admin area via a browser.
For steps to resolve this issue on a stock cPanel & WHM server, see our help documentation.
For more help, contact your system administrator or hosting provider.
The result of this check are cached so the warning may not disappear immediately after making the necessary changes to resolve the issue and will only update after the Daily Cron tasks have been executed.
Insecure Permissions Check
This check ensures that key files and directories have the appropriate permissions. It will alert you to ownership mismatches or permission levels that are higher than are necessary for day-to-day operation of the system.
For most WHMCS installations, we recommend the following permissions:
File or Directory | chmod Permission |
---|---|
configuration.php | 400 (Readable) |
/attachments | 777 (Writeable) |
/downloads | 777 (Writeable) |
/templates_c | 777 (Writeable) |
All other files | 644 (Owner writeable, otherwise readable) |
All other directories | 755 (Owner writeable, otherwise readable and executable) |
PHP
- This does not apply to installations using suPHP or phpSuExec.
- If you use DSO as your PHP handler, you must use 644 permissions.
For more information, see our help documentation.
Required PHP Extensions
This check detects your configured PHP extensions and lists any missing extensions that WHMCS requires in order to function.
If you see any extensions here, add those extensions to your PHP configuration and recompile PHP.
Recommended PHP Extensions
Checks for the presence of recommended PHP extensions. While not strictly required, this will alert you to any extensions which are not available in your environment that are either required by certain addons or modules or that can help provide improved performance. Detailed in our help guide here we recommend recompiling PHP with the missing extensions listed.
Required PHP Functions
Checks for any PHP functions that are required for WHMCS to operate and will alert you to any that are disabled. If you see any functions reported here, you should check for the presence of them in the php.ini configuration file disable_functions setting and remove them.
PHP Memory Limit
Checks the memory limit setting in your PHP environment and will alert you when it is too low. Will alert you by way of a failure level alert when below the minimum required value and a warning level alert when above the minimum but below the recommended value.
For more details on the required memory limit, see System Requirements.
Error Reporting
This check alerts you if Display Errors is enabled in the Other tab at Configuration () > System Settings > General Settings.
Display Errors is useful for development and debugging situations. For security reasons, we strongly recommend disabling it whenever you are not actively troubleshooting an issue.
PHP Error Levels
Alerts you if the error reporting level is set to a very high level. We recommend only logging certain error types, as detailed here.
PHP Version
Checks your PHP version. Will alert you if your current PHP version has reached End of Life and is no longer supported by the PHP Group.
Customising Default Paths
Checks for the existance of custom directory paths. You can customise some of the default directory paths in WHMCS to make it more difficult for malicious users to find them. This check will alert you if any directories that support customisation have not been customised. Please see this helpful documentation about this.
Using Default Templates
Alerts you if any template settings are set to a template of a default name which could be an indication of customisations having been made to a default template. This can result in customisations being lost at the time of the next upgrade. Please see this helpful documentation about this.
Installed cURL Version
Checks the installed curl version and alerts you if your version is known to have any vulnerabilities. More information available here
SSL Support in cURL
Checks to ensure that the curl library present in the PHP environment has SSL support which is required for normal WHMCS operation and many of the modules which come with WHMCS.
PHP Session Support
This check displays common issues with your PHP environment's session configuration. For more information to resolve this issue, see Resolving Items on the System Health Status Page.
Secure TLS Support in cURL
Checks to ensure that the curl library present in the PHP environment supports secure TLS versions (TLS v1.1 and v1.2). With many payment vendors phasing out legacy SSL/TLS protocols in accordance with PCI DSS recommendations, this check will help to stay up to date with newer standards.
MySQL Server Configuration Check
We added this check in WHMCS 8.1.
Alerts you to MySQL server configuration settings which may degrade the performance of WHMCS. Including preventing the Daily Automation System Tasks and Auto Updater from completing successfully. A warning is displayed if the following settings are below the suggested minimums:
connect_timeout < 10 seconds wait_timeout < 300 seconds interactive_timeout < 300 seconds max_allowed_packet < 4194304 (or 4MB)
These values are for guidance only and higher limits may be necessary on low-powered or heavily-loaded servers. For assistance with your MySQL server configuration, contact your hosting provider or system administrator.
CloudFlare® Proxy Check
We added this check in WHMCS 8.10.
This check indicates whether WHMCS detected that you are using CloudFlare. A warning displays if there is a misconfiguration in your settings for trusted proxies.
If you see a warning message, click the link to automatically adjust your trusted proxy settings.
CloudLinux™ MySQL Extension Check
We added this check in WHMCS 8.2.
The CloudLinux-provided pdo_mysql PHP extension can cause problems with data display in the WHMCS interface. Instead, CloudLinux users should use the nd_pdo_mysql extension.
This check only applies to CloudLinux users.
For help to resolve this problem, see CloudLinux's PHP Selector documentation or contact your server administrator.
Support Ticket Mask Check
We added this check in WHMCS 8.3.
Checks the amount of possible ticket numbers that the system can create and the percentage that it has already used. The system bases this on your Support Ticket Mask Format setting in the Support tab at Configuration () > System Settings > General Settings.
To resolve this issue, adjust the Support Ticket Mask Format setting to allow more possible ticket number combinations.
Event Handling
We added this check in WHMCS 8.4.
Checks for proper execution of event handling jobs like the Create, Terminate, and other actions for WHMCS's provisioning modules. If the check detects problems, consider changing the Event Handling setting in the Other tab at Configuration () > System Settings > General Settings.
System URL Check
We added this check in WHMCS 8.8.
Checks whether you have set WHMCS System URL in the General tab at Configuration () > System Settings > General Settings. If possible, WHMCS attempts to set this value automatically during installation.