Difference between revisions of "PHP 7 Migration Troubleshooting Guide"

From WHMCS Documentation

(Redirected page to PHP Upgrade Troubleshooting Guide)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[PHP 7 Migration Guide|« Back to the PHP 7 Migration Guide]]
+
#REDIRECT [[PHP Upgrade Troubleshooting Guide]]
 
 
If, after changing your PHP version, you encounter an '''Oops''' error or a blank or partially-rendered page, it is likely that there is a file in your installation that is not compatible with the new PHP version.
 
 
 
This may indicate one of these problems:
 
 
 
* Syntax Error — A file uses deprecated or removed functionality that is no longer available in the newer version of PHP.
 
* Decoding — A file is encoded with an ionCube® encoding that is not compatible with the newer version of PHP or the installed ionCube Loader® extension.
 
 
 
To confirm the exact cause of the issue, you must enable error reporting.
 
 
 
==Enabling Error Reporting==
 
 
 
===Enabling From The Admin Area===
 
 
 
If you can log in to the Admin Area and navigate to '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > General Settings''', use these steps to enable error display:
 
 
 
# Go to '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > General Settings''' or, prior to WHMCS 8.0, '''Setup > General Settings'''.
 
# Select the '''Other''' tab.
 
# Check '''Display Errors'''.
 
# Click '''Save Changes'''.
 
 
 
After error reporting is enabled, retry the steps that previously led to the '''Oops!''', blank, or partially rendered page. More information will display.
 
 
 
===Enabling From Your Configuration File===
 
 
 
If you cannot log in, use these steps to enable error reporting in the configuration file directly:
 
 
 
# In the WHMCS root directory, edit the <tt>configuration.php</tt> file.
 
# Add these lines at the end of the configuration file, below any other lines but above the closing <tt>?></tt> line, if it is present:<div class="source-cli">$display_errors = true;</div>
 
 
 
After error reporting is enabled, retry the steps that previously led to the '''Oops!''', blank, or partially rendered page. More information will display.
 
 
 
==Common Errors/Resolutions==
 
 
 
With error reporting enabled, you should see the full error message that WHMCS generates when the problem occurs.
 
 
 
===Oops! Something went wrong and we couldn't process your request===
 
 
 
[[File:Oops_error_page.png]]
 
 
 
This indicates that a fatal error is occurring. Usually, this is due to these causes:
 
 
 
* '''Missing PHP Extensions''' — You may see this error if your version of PHP is missing some of the [[System_Environment_Guide#Extensions_2|required extensions]] for WHMCS.<div class="docs-alert-warning">If you compile PHP using EasyApache, you must include both the '''PDO''' and '''mysqlnd''' PHP extensions to allow MySQL® connections.</div>
 
* '''Incompatible PHP Files''' — PHP files using deprecated or unavailable functions may trigger an error page. To debug this, enable error reporting to find the file and PHP error output.
 
 
 
===The file was encoded by the ionCube Encoder for PHP x.x and cannot run...===
 
 
 
You may see an error message that looks like this:
 
 
 
The file /path/to/file.php was encoded by the ionCube Encoder for PHP 5.6 and cannot run under PHP 7.1 or later. Please ask the provider of the script to provide a version encoded with the ionCube Encoder for PHP 7.1.
 
 
 
Seeing the above error message indicates that the file was encoded using an older version of ionCube Encoder® that does not include support for PHP 7.1 or later. Contact the original author of the file for an updated version.
 
 
 
If the file is a WHMCS file, we may no longer maintain or distribute it.
 
* You can identify WHMCS files by checking for the WHMCS copyright notice at the beginning of the file.
 
* Typically, built-in routine updates remove these files automatically. However, permissions issues may prevent removal.
 
* Normally, these files are not in use by the current version of WHMCS and you can delete them.
 
 
[[PHP 7 Migration Guide|&laquo; Back to the PHP 7 Migration Guide]]
 

Latest revision as of 17:10, 23 November 2022