We have a new documentation site for cPanel & WHM! You can find our new documentation site at docs.cpanel.net.
We will continue to maintain our API documentation on this server.
This document lists the changes that EasyApache 4 makes to your system when you migrate from EasyApache 3, as well as any necessary manual changes. For more information, read our Current Status of EasyApache 4 documentation.
This document is not comprehensive. It only provides an overview of the changes that the migration script attempts.
In cPanel & WHM version 60 and higher, the script performs a preflight check to confirm that the system configuration will properly migrate.
When you run the migration script, it checks to ensure the availability of your system's current version of PHP. If EasyApache 4 does not support the system's current PHP version, the script issues a warning and prompts you to confirm that you want to continue the migration.
The script attempts to convert the currently installed EasyApache 3 profile,
/var/cpanel/easy/apache/profile/_main.yaml, into an EasyApache 4 profile. It copies the profile to the following location:
If the profile converts successfully, the system installs the converted EasyApache 3 profile. If it does not convert successfully, the system installs the cPanel Default profile, located in the
The script automatically removes the following RPMs from your system, if they exist:
The script installs the following required EasyApache 4 RPMs:
The script attempts to match your EasyApache 3 modules to the EasyApache 4 RPMs. If the script cannot match a module with an RPM, the script pauses and prompts you to either continue or abort the conversion. Some modules are not compatible with EasyApache 4.
EasyApache 4 only supports Apache 2.4. Any profile that contains an older version of Apache will require an upgraded version of Apache.
The script backs up your
/usr/local/apache directory to the
After your system successfully builds EasyApache 4, the system moves the data from the
/usr/local/apache.ea3/conf/userdata/ directory to the /
In the following examples,
user represents a user name and
domain represents a domain name.
The data structure remains the same in the new directory. For example, the
/usr/local/apache/conf/userdata/ssl/2_4/user/domain directory will move to the
The following exceptions exist:
/conf/userdata/std/2/directory exists, the system moves and uses that directory instead.
/conf/userdata/ssl/2/directory exists, the system moves and uses that directory instead.
cp_bw_all_limit.conffile, the system moves the following files:
/usr/local/apache.ea3/conf/userdata/std/2/user/domain/cp_bw_all_limit.conffile moves to the
/usr/local/apache.ea3/conf/userdata/ssl/2/user/domain/cp_bw_all_limit.conffile moves to the
.confnaming convention. For example, a file named
post_virtualhost_1.confwill not migrate.
For more information, read our Modify Apache Virtual Hosts with Include Files documentation.
With the introduction of MultiPHP, we made significant changes in how the system handles your PHP files.
In PHP 5.6 and above, PHP's default charset changed to
UTF-8. This may break the encoding on some websites. For more information, read PHP's documentation.
In cPanel & WHM version 60 and above, EasyApache 4 attempts to migrate the
php.ini files on the system to an EasyApache 4 compatible format. In order for a user's
php.ini file to migrate successfully, all of the following must be true:
.htaccessfiles must exist in the user's home directory.
.htaccessfile must contain a properly configured
suPHP_ConfigPathdirectory must contain a
php.inifile specified in the
suPHP_ConfigPathdirective must exist in the user's home directory.
If the migration completes successfully, the system renames the original
php.ini file to
php.ini.ea3.bak. Comments in the original
php.ini file are not retained in the converted file.
There is no content with the specified labels