<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	
	xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>DesignDivine Project Blog &#187; Drupal</title>
	<atom:link href="http://blog.designdivine.com/tag/drupal/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.designdivine.com</link>
	<description>Current Projects, News, Thoughts on Design &#38; Development</description>
	<lastBuildDate>Thu, 12 Jan 2012 17:22:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Updating Drupal</title>
		<link>http://blog.designdivine.com/2009/07/updating-drupal/</link>
		<comments>http://blog.designdivine.com/2009/07/updating-drupal/#comments</comments>
		<pubDate>Tue, 28 Jul 2009 17:43:57 +0000</pubDate>
		<dc:creator>taavo</dc:creator>
				<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Drupal]]></category>

		<guid isPermaLink="false">http://blog.designdivine.com/?p=597</guid>
		<description><![CDATA[Compared to WordPress&#8217;s automated self-updates, Drupal&#8217;s update process is something of a chore. This chore isn&#8217;t made any easier by Drupal&#8217;s documentation (also here), which at the time of writing takes up nine pages, is self-contradictory, unnecessarily time-consuming and somewhat paranoid. And it never offers a canonical pragmatic checklist. After reading all the documentation I [...]]]></description>
			<content:encoded><![CDATA[<p>Compared to WordPress&#8217;s automated self-updates, Drupal&#8217;s update process is something of a chore. This chore isn&#8217;t made any easier by Drupal&#8217;s <a href="http://drupal.org/upgrade/">documentation</a> (also <a href="http://drupal.org/upgrade/tutorial-introduction">here</a>), which at the time of writing takes up nine pages, is self-contradictory, unnecessarily time-consuming and somewhat paranoid. And it never offers a canonical pragmatic checklist.</p>
<p>After reading all the documentation I could stand and going through the process a number of times, this is the protocol I&#8217;ve developed for myself:</p>
<p><b>1. Make sure all your modules are compatible with the new version</b></p>
<p>If they aren&#8217;t, you should deal with this <i>before</i> the update, not after.</p>
<p><b>2. Back up all the files, and the database</b></p>
<p>If anything goes wrong, I need to be able to revert to a known-working state. This also serves as a useful archive, in case anything goes wrong with the site between updates.</p>
<p><b>3. Put the system in maintenance mode</b></p>
<p>This will prevent any visitors from potentially encountering a scarily-broken web site before you&#8217;re done upgrading.</p>
<p><b>4. Create a temporary folder, and move all the existing files in there</b></p>
<p>Don&#8217;t want to run the risk of overwriting anything important (especially .htaccess or /sites). Alternately, you could delete your whole site and then re-upload, but this is faster.</p>
<p><b>5. Upload the new version of Drupal</b></p>
<p><b>6. Replace the freshly installed /sites/all folder with the old one from your temporary directory or your backup</b></p>
<p>This should restore all modules and themes. You&#8217;ll notice that I haven&#8217;t disabled any modules or themes prior to the update: I only work with custom themes, and so far none have broken in an update. I try to use as few modules as possible on any given site, and <i>always</i> check to ensure essential modules are compatible prior to an update.</p>
<p><b>7. Move /sites/default/files from your temporary directory or backup to /sites/default/files.</b></p>
<p>You might need to change the permissions on the old /sites/default/files to do so.</p>
<p><b>8. Reconcile /sites/default/settings.php</b></p>
<p>Compare the old /sites/default/default.settings.php to new one. If they match, you can just move the old /sites/default/settings.php to the new /sites/default directory. If they don&#8217;t, you need to open the old /sites/default/settings.php, copy /sites/default/default.settings.php to /sites/default/default.settings.php,<br />
and migrate all settings to the new /sites/default/settings.php we just<br />
created.</p>
<p><b>9. Reconcile .htaccess</b></p>
<p>If I&#8217;m getting Internal Server Errors after the update, it&#8217;s nearly always because I missed something in this step. Compare your old .htaccess to your new .htaccess, and make sure to migrate any changes over. For me, this nearly always means enabling RewriteBase (to support pretty urls), and ensuring Drupal runs under PHP5 (required by many modules).</p>
<p><b>10. Run update.php</b></p>
<p>This will upgrade all your database tables to the new version.</p>
<p><b>11. Take the system out of maintenance mode</b></p>
<p><b>12. Visit /admin/reports/updates to make sure everything is ok there</b></p>
<p><b>13. Verify functionality</b></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.designdivine.com/2009/07/updating-drupal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<enclosure url="" type="image/jpeg" />

	</item>
	</channel>
</rss>

