Updating ExpressionEngine
Upgrading Major Versions
Important Updating major version (example from v4.x to v5.x) typically includes major updates and breaking changes. Do not upgrade major version manually or via 1-click without testing in a test or development environment first. Always backup your files and database first as well as ensure that your add-ons are compatibile with the version you are upgrading to.
One Click Updating
ExpressionEngine supports one-click updating as of Version 4.0 or newer. If you are running a version older than 4, then you must perform a manual update.
When an update is available, you’ll see the version number in the control panel footer turn yellow or red. Click the version number, then click “Update Now”.
Upgrade Steps
- Backup files and Database
- Confirm all add-ons are updated and compatiable with new major ExpressionEngine version
- Test in staging environment
In the rare case an update fails, please read Troubleshooting Automatic Updates.
Note: If updating from a version prior to ExpressionEngine 6, you may need to rename or remove system/ee/EllisLab
directory manually. You will also need to manually copy the latest index.php and admin.php files to your site’s root folder.
Updating Via EECLI
You can also update ExpressionEngine via the command line on your server. This allows you to keep your installation’s files only writable by your user and not also by your web service.
To update via the eecli tool, run:
php eecli.php update
Options
rollback: Rollsback last update verbose,v: Verbose output force-addon-upgrades: Automatically runs all addon updaters at end of update (advanced) y: Skip all confirmations. (advanced)
Updating Manually
Feature Update:
As of ExpressionEngine 5.4, you may now upgrade directly from ExpressionEngine 2 to the current version.
1. Backup and Prepare
- Back-up your ExpressionEngine database and files.
- Download the latest release of ExpressionEngine and unzip the files to a folder on your computer.
Note: Check your third-party add-ons to see if you need updated versions for the latest version of ExpressionEngine. Most add-ons do not need major changes when updating from v3 or higher. Your add-on vendor(s) can let you know what, if anything, you need to do for your installed add-ons. Any add-ons not compatible with the version you are upgrading to, should be uninstalled and removed before attempting the upgrade.
2. Copy Files
Working either locally with your backed up files, or on the server (not recommended), copy the following files from the newly downloaded release to your site:
If updating from ExpressionEngine 2
Copy the following files from the backup of your current site to the new folder where you unzipped the new version of ExpressionEngine on your computer:
- Copy
system/expressionengine/config/config.php
tosystem/user/config/config.php
- Copy
system/expressionengine/config/database.php
tosystem/user/config/database.php
- If you have any languages other than English in your Control Panel, copy all files and directories except english from
system/expressionengine/language/
tosystem/user/language/
. - If you have the forum module installed, copy the directory
themes/forum_themes/
tothemes/user/forum/
. - If you have the wiki module installed, copy the directory
themes/wiki_themes/
tothemes/user/wiki_themes/
. - If you save templates as files, copy all files and directories from
system/expressionengine/templates/
tosystem/user/templates/
.
Note: If you’ve moved your system directory, make sure to change both index.php
and admin.php
to point to the correct directory. And don’t forget to update all admin.php
files if you’re running your control panel from multiple Sites!
Note: We recommend putting ExpressionEngine 6 compatible third-party add-ons into the system/user/addons/
directory now.
On the server, rename the following files and directories:
- Rename
system/
tosystem_old/
- Rename
themes/
tothemes_old/
- Rename
index.php
toindex.php.old
- Rename
admin.php
toadmin.php.old
Then upload the following files and directories:
system/
themes/
index.php
admin.php
If updating from ExpressionEngine 3 or higher
- Copy
admin.php
toadmin.php
- Copy
index.php
toindex.php
- Copy
system/ee/
tosystem/ee/
- Copy
themes/ee/
tothemes/ee/
Note: If you’ve moved your system directory, make sure to change both index.php
and admin.php
to point to the correct directory. And don’t forget to update all admin.php
files if you’re running your control panel from multiple Sites!
Note: We recommend putting ExpressionEngine 6 compatible third-party add-ons into the system/user/addons/
directory now.
3. Run The Update Wizard
Go to your site’s control panel URL (typically found at https://example.com/admin.php
or https://example.com/system/
) and follow the on-screen instructions to update ExpressionEngine.
4. Clean up
You’re Done! ExpressionEngine is now fully updated. But before you go…
- If the updater could not automatically rename the installer, rename or remove
system/ee/installer/
directory manually. The installer directory can be safely removed after installing ExpressionEngine. - To enable one-click updating, make sure your file permissions are all set.
- Review file permissions if something isn’t working quite right.