Retired Documentation
You are using the documentation for version 2.11.9. Go here for the latest version or check here for your available upgrades to the latest version.
Upgrading from ExpressionEngine 1¶
This guide will help you upgrade your site from ExpressionEngine 1 to ExpressionEngine 2.
Important
Third-party add-ons from version 1.x will not work with ExpressionEngine 2. Please contact each add-on’s author for a 2.x-compatible version before upgrading, or your site may not function properly. The installer will automatically disable all extensions as part of the upgrade process.
1. Prepare and Back-up¶
Download the most recent release of ExpressionEngine (either ExpressionEngine Core or the standard edition, whichever your site is currently running) and unzip the files to a folder on your computer.
In your ExpressionEngine Control Panel, go to
. Select All Caches and click Submit.Back-up your ExpressionEngine database.
Back-up all your ExpressionEngine files and directories:
Find these files and directories and add
_old
to the name:- Rename
index.php
toindex.php_old
- Rename
system/
tosystem_old/
- Rename
themes/
tothemes_old/
- Rename
We strongly encourage taking your site offline for the duration of the update so that people visiting your site won’t see any PHP errors or other anomalies that may occur while you are uploading files:
- Copy
system/utilities/offline.html
to your web root directory (the same place you have your mainindex.php
file). - Rename
offline.html
toindex.html
. Now your visitors will see the “offline” page while you update your site.
- Copy
2. Upload New Files¶
Using your favorite FTP client, upload these files and directories to your server:
admin.php
index.php
system/
themes/
During this step, you should also upload the most recent version of all add-ons installed in your ExpressionEngine installation. Consult the documentation for each add-on for any particular steps necessary to upgrade that add-on.
Important
If you have Discussion Forum or Multiple Site Manager installed, be sure to update them to the latest versions whenever you update ExpressionEngine.
3. Restore Select 1.x Files¶
- Restore the config file from your backup:
- Copy
system_old/config.php
tosystem/expressionengine/config/
- Copy
- If you saved your templates as flat files in ExpressionEngine 1,
restore this directory from your backup:
- Copy all files and directories from
system_old/templates/
tosystem/expressionengine/templates/
- Copy all files and directories from
Important
If you’re running Multiple Site Manager and saving
templates as files, you will need to create template directories for
each site and and copy your 1.x templates into the proper
directories. The directories should reside in system/expressionengine/templates
and named following the
format system/expressionengine/templates/site_short_name/
4. Restore File Changes¶
Copy over to these files any modifications that had been made to
ExpressionEngine 1’s path.php
file, such as updating the system
directory name or path:
admin.php
index.php
Note
If you are using
Multiple Site Manager, the same should be
done for each MSM site’s index.php
and admin.php
file.
5. Verify File Permissions¶
Apache¶
These permissions are typical for PHP-based applications running on Apache, though you may want to check with your web host to see if more restrictive permissions can be used to allow PHP to write to files and directories.
Set these files to 666:
system/expressionengine/config/config.php
system/expressionengine/config/database.php
Set these directories (and their subdirectories) to 777:
system/expressionengine/cache/
system/expressionengine/templates/
images/avatars/uploads/
images/captchas/
images/member_photos/
images/pm_attachments/
images/signature_attachments/
images/uploads/
IIS¶
Provide all permissions to the IIS user for these directories:
system/expressionengine/cache/
(and subdirectories)images/avatars/uploads/
images/captchas/
images/member_photos/
images/pm_attachments/
images/signature_attachments/
images/uploads/
6. Run The Upgrade Wizard¶
Point your browser to the URL of the admin.php
file you
uploaded. For example: http://example.com/admin.php
Follow the on-screen instructions to upgrade ExpressionEngine. Once the
Update Wizard is finished, you must remove the
system/installer/
directory from your server.
7. Cleanup¶
- Remove the offline
index.html
file that was added to your web root in Step 1. - Review the Version Notes since they outline any version-specific changes that you may need to make to your installation.
You’re Done! ExpressionEngine is now fully upgraded.
Post-Installation Best Practices¶
Once you are confident that ExpressionEngine 2 is working normally on your server, we recommend a few best practices for protecting your installation against common security risks.