[drupal] Drupal6.28に更新

Submitted byshin on月, 2013-07-15 15:56
さくらのレンタルサーバーからVPSに移ろうかなぁと悩んでいたのもあり、 Drupalの更新をずっとさぼっていたのだけど、ディスクスペース100GB(年間5000円でディスク100GBは 会社のレンタルディスクより安い)のアナウンスがあり、引っ越しはやめて更新することにした。

ちなみに、Drupalの更新は 2010/08/08の6.14バージョンアップ以来約3年ぶり。

諸々の問題が解決できなかったのでDrupal7.22への移行はあきらめ

今まで 更新後
Drupal 6.17 6.28
Taxonomy Menu 6.x-2.9
CAPTCHA 6.x-2.3rc2 6.x-2.5
Hiragana CAPTCHA 6.x-1.1

■■前準備


  1. 管理者(user_id=1)でログイン
    http://www.xxx.net/?q=user (クリーンURL OFF時)
  2. サイトのメンテナンスから、サイトをオフラインに
    http://www.xxx.net/admin/settings/site-maintenance
  3. モジュール/テーマを初期状態に近づける
    http://www.xxx.net/admin/build/modules
    OFFしたのは、 Hiragana Captcha(->Captcha), Google Analytics, Taxonomy Menu, CAPTCHA, Taxnomy Menu
  4. 一応、この環境で問題なく動作することを確認
  5. データベースをダンプ
    1. サクラコントロールパネルで新データベースを作成
      既存データベースを流用する時は、phpMyAdminでデータベースを空にする
    2. 現行データベースの内容を新データベースにコピー
      バックアップは、 mysqldump -Q --host=HOSTNAME --user=USERNAME --password=PASSWORD DBNAME < dump.sql
      リストアは、 mysql --host=HOSTNAME --user=USERNAME --password=PASSWORD DBNAME > dump.sql
      ※データベースのサイズが127MBで、phpMyAdmin経由だとファイルサイズ制限(16MB)でインポートできない
  6. サイトをバックアップ
    普通に tarで

■■Drupal2.28環境の構築


  1. 一旦すべて消す
  2. Drupal2.28のオリジナルアーカイブを展開
    zcat drupal-6.28.tar.gz | tar -xf -
  3. オリジナルとの差分を修正
    1. .htaccess
      1. "Options -Indexes"をコメントアウト
        さくらは、.htaccessで、Optionsディレクティブ宣言を禁止している為
      2. "Options +FollowSymLinks"をコメントアウト
        さくらは、.htaccessで、Optionsディレクティブ宣言を禁止している為
      3. [/.htaccess] "DirectoryIndex index.php"を"DirectoryIndex index.php /index.php"に
        Options -Indexesの代替手段
      4. Rewrite関係のコメントアウトしている"RewriteBase /"を外す
    2. sites/default/setting.php
      1. オリジナルのsites/default/default.setting.phpをsetting.phpにコピー
      2. $db_url,$base_urlの修正を反映
    3. php.ini
      マルチバイト文字列対応の為に以下の内容で作成
      mbstring.func_overload = 0
      mbstring.language = neutral
      mbstring.http_input = pass
      mbstring.http_output = pass
      mbstring.encoding_translation = off
      mbstring.internal_encoding = UTF-8
      magic_quotes_gpc = Off
      register_globals = Off
      session.auto_start = Off
      
    4. themes/bluemarine/page.tpl.php
      AccessAnalyzerのタグ,favicon.ico表示記述を埋め込む
    5. files/.htaccess,files/tmp/.htaccess
      空ファイルを作成
      DrupalがOptions付きの.htaccessを作成するのを防ぐため
      なんだけど、この後、昔の files/を持ってくるので不要
    6. 旧環境のfiles/以下をコピー
    7. sites/all/modulesの下に、captcha(6.x-2.5),taxonomy_menu(6.x-2.9),hiragana_captcha(6.x.1.1)を展開
    8. sites/all/themesの下に、drivecafe_earlyautumn_dpを展開
      page.tpl.phpに、AccessAnalyzerのタグ,favicon.ico表示記述を埋め込む
  4. 環境再構築
    1. update.phpを実行
    2. taxonomy_menu,captcha,Hiragana captcha,モジュール, earlyautumn_dpテーマをON
    3. update.php等
    4. オンラインモードに
    5. 様子見(^^;