annotate core/UPDATE.txt @ 7:848c88cfe644

More layout
author Chris Cannam
date Fri, 05 Jan 2018 13:59:44 +0000
parents 4c8ae668cc8c
children 129ea1e6d783
rev   line source
Chris@0 1 INTRODUCTION
Chris@0 2 ------------
Chris@0 3 This document describes how to update your Drupal site between 8.x.x minor and
Chris@0 4 patch versions; for example, from 8.1.2 to 8.1.3, or from 8.3.5 to 8.4.0.
Chris@0 5
Chris@0 6 To upgrade from a previous major version (for example, Drupal 6 or 7), the
Chris@0 7 process involves importing site configuration and content from your old site
Chris@0 8 into a new Drupal 8 site. The tools and process are currently experimental,
Chris@0 9 rather than being fully supported, so be sure to test in a development
Chris@0 10 environment. You will need to use the core Migrate Drupal UI module which
Chris@0 11 provides a user interface for the Migrate and Migrate Drupal modules included
Chris@0 12 in core. See https://www.drupal.org/upgrade/migrate for details, and
Chris@0 13 https://www.drupal.org/node/2167633 for known issues.
Chris@0 14
Chris@0 15 First steps and definitions:
Chris@0 16
Chris@0 17 * If you are upgrading to Drupal version x.y.z, then x is known as the major
Chris@0 18 version number, y is known as the minor version number, and z is known as
Chris@0 19 the patch version number. The download file will be named
Chris@0 20 drupal-x.y.z.tar.gz (or drupal-x.y.z.zip). Previous Drupal versions used
Chris@0 21 only x.y (MAJOR.MINOR) to designate their versions.
Chris@0 22
Chris@0 23 * All directories mentioned in this document are relative to the directory of
Chris@0 24 your Drupal installation.
Chris@0 25
Chris@0 26 * Make a full backup of all files, directories, and your database(s) before
Chris@0 27 starting, and save it outside your Drupal installation directory.
Chris@0 28 Instructions may be found at
Chris@0 29 https://www.drupal.org/upgrade/backing-up-the-db
Chris@0 30
Chris@0 31 * It is wise to try an update or upgrade on a test copy of your site before
Chris@0 32 applying it to your live site. Even minor updates can cause your site's
Chris@0 33 behavior to change.
Chris@0 34
Chris@0 35 * Each new release of Drupal has release notes, which explain the changes made
Chris@0 36 since the previous version and any special instructions needed to update or
Chris@0 37 upgrade to the new version. You can find a link to the release notes for the
Chris@0 38 version you are upgrading or updating to on the Drupal project page
Chris@0 39 (https://www.drupal.org/project/drupal).
Chris@0 40
Chris@0 41 UPDATE PROBLEMS
Chris@0 42 ----------------
Chris@0 43 If you encounter errors during this process,
Chris@0 44
Chris@0 45 * Note any error messages you see.
Chris@0 46
Chris@0 47 * Restore your site to its previous state, using the file and database backups
Chris@0 48 you created before you started the update process. Do not attempt to do
Chris@0 49 further updates on a site that had update problems.
Chris@0 50
Chris@0 51 * Consult one of the support options listed on https://www.drupal.org/support
Chris@0 52
Chris@0 53 More in-depth information on updating and upgrading can be found at
Chris@0 54 https://www.drupal.org/upgrade
Chris@0 55
Chris@0 56 MINOR AND PATCH VERSION UPDATES
Chris@0 57 -------------------------------
Chris@0 58 To update from one 8.x.x version of Drupal to any later 8.x.x version, after
Chris@0 59 following the instructions in the INTRODUCTION section at the top of this file:
Chris@0 60
Chris@0 61 1. Log in as a user with the permission "Administer software updates".
Chris@0 62
Chris@0 63 2. Go to Administration > Configuration > Development > Maintenance mode.
Chris@0 64 Enable the "Put site into maintenance mode" checkbox and save the
Chris@0 65 configuration.
Chris@0 66
Chris@0 67 3. Remove the 'core' and 'vendor' directories. Also remove all of the files
Chris@0 68 in the top-level directory, except any that you added manually.
Chris@0 69
Chris@0 70 If you made modifications to files like .htaccess, composer.json, or
Chris@0 71 robots.txt you will need to re-apply them from your backup, after the new
Chris@0 72 files are in place.
Chris@0 73
Chris@0 74 Sometimes an update includes changes to default.settings.php (this will be
Chris@0 75 noted in the release notes). If that's the case, follow these steps:
Chris@0 76
Chris@0 77 - Locate your settings.php file in the /sites/* directory. (Typically
Chris@0 78 sites/default.)
Chris@0 79
Chris@0 80 - Make a backup copy of your settings.php file, with a different file name.
Chris@0 81
Chris@0 82 - Make a copy of the new default.settings.php file, and name the copy
Chris@0 83 settings.php (overwriting your previous settings.php file).
Chris@0 84
Chris@0 85 - Copy the custom and site-specific entries from the backup you made into the
Chris@0 86 new settings.php file. You will definitely need the lines giving the
Chris@0 87 database information, and you will also want to copy in any other
Chris@0 88 customizations you have added.
Chris@0 89
Chris@0 90 You can find the release notes for your version at
Chris@0 91 https://www.drupal.org/project/drupal. At bottom of the project page under
Chris@0 92 "Downloads" use the link for your version of Drupal to view the release
Chris@0 93 notes. If your version is not listed, use the 'View all releases' link. From
Chris@0 94 this page you can scroll down or use the filter to find your version and its
Chris@0 95 release notes.
Chris@0 96
Chris@0 97 4. Download the latest Drupal 8.x.x release from https://www.drupal.org to a
Chris@0 98 directory outside of your web root. Extract the archive and copy the files
Chris@0 99 into your Drupal directory.
Chris@0 100
Chris@0 101 On a typical Unix/Linux command line, use the following commands to download
Chris@0 102 and extract:
Chris@0 103
Chris@0 104 wget https://www.drupal.org/files/projects/drupal-x.y.z.tar.gz
Chris@0 105 tar -zxvf drupal-x.y.z.tar.gz
Chris@0 106
Chris@0 107 This creates a new directory drupal-x.y.z/ containing all Drupal files and
Chris@0 108 directories. Copy the files into your Drupal installation directory:
Chris@0 109
Chris@0 110 cp -R drupal-x.y.z/* drupal-x.y.z/.htaccess /path/to/your/installation
Chris@0 111
Chris@0 112 If you do not have command line access to your server, download the archive
Chris@0 113 from https://www.drupal.org using your web browser, extract it, and then use
Chris@0 114 an FTP client to upload the files to your web root.
Chris@0 115
Chris@0 116 5. Re-apply any modifications to files such as .htaccess, composer.json, or
Chris@0 117 robots.txt.
Chris@0 118
Chris@0 119 6. Run update.php by visiting http://www.example.com/update.php (replace
Chris@0 120 www.example.com with your domain name). This will update the core database
Chris@0 121 tables.
Chris@0 122
Chris@0 123 If you are unable to access update.php do the following:
Chris@0 124
Chris@0 125 - Open settings.php with a text editor.
Chris@0 126
Chris@0 127 - Find the line that says:
Chris@0 128 $settings['update_free_access'] = FALSE;
Chris@0 129
Chris@0 130 - Change it into:
Chris@0 131 $settings['update_free_access'] = TRUE;
Chris@0 132
Chris@0 133 - Once the update is done, $settings['update_free_access'] must be reverted
Chris@0 134 to FALSE.
Chris@0 135
Chris@0 136 7. Go to Administration > Reports > Status report. Verify that everything is
Chris@0 137 working as expected.
Chris@0 138
Chris@0 139 8. Ensure that $settings['update_free_access'] is FALSE in settings.php.
Chris@0 140
Chris@0 141 9. Go to Administration > Configuration > Development > Maintenance mode.
Chris@0 142 Disable the "Put site into maintenance mode" checkbox and save the
Chris@0 143 configuration.
Chris@0 144