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
|