2010年底我開始嘗試使用Drupal來建站,替代已經使用過多年的MediaWiki,當時Drupal的最新版本是6.19,在不久後的2011年初推出了Drupal 7的正式版本,但因為很多第三方模塊都還沒有與Drupal 7配套的,所以我也一直沒有用Drupal 7,為了省事就一直用的Drupal 6,隻是中途用一個簡單的複制文件的辦法"Drupal 6.x Upgrade - Files Only"來升級到6.20。
此後Drupal 6又陸續推出了6.21, 6.22, 6.23, 6.24,但都無法使用前面的直接複制文件的辦法來更新,所以我也一直拖着沒有再升級,雖然總是看到系統的升級提示。
另外,Drupal的第三方模塊升級起來要簡單一些,主要就是複制新的文件替代以前的文件,然後運行update.php就可以了,這個工作我倒是進行過幾次,都還算比較順利。
最近新購入了幾台服務器,搭建新網站的時候自然就準備直接用目前最新的Drupal 7.12了,也準備逐步将以前的Drupal 6.20版本網站進行升級,這兩天看了不少這方面的文檔,升級确實是一個麻煩事情,但肯定是可以克服苦難而帶來好處的,所以後面還是會進行。
升級的辦法主要都是參考Drupal官方網站上的英文說明,對于我們網站來說,有地方需要特别注意,就是我們網站在很少量的第三方模塊甚至核心模塊上做了修改變動,這是不規範的,需要在升級的時候特别留意,我記得修改的一些地方如下:
- 修改過themes/garland/garland.info和themes/garland/page.tpl.php,添加了Top和Bottom兩個Block位置;
- 部分網站修改了搜索結果顯示模塊modules/search/search-result.tpl.php,去掉了發布人和發布時間的顯示;
- 為了避免導入數據數據等時候遇到超時報錯,修改了includes/common.inc,将其中的@set_time_limit(240);改為@set_time_limit(360);
- 導入數據的過程中還有報錯,需要修改node_import.inc,将1007行删除或者注釋或者修改那個60:set_time_limit(variable_get('node_import:set_time_limit', 60));
- Pathauto模塊生成帶有單引号、雙引号、反斜杠URL問題,通過修改path.inc中的代碼來解決;
- 使用Transliteration模塊實現中文轉拼音,原來附帶的拼音有不少都是錯誤的,需要修改代碼來解決;
- 為了Drupal網站中不讓Cron自動更新XML_Sitemap,修改sites/all/module/xmlsitemap/xmlsitemap.admin.inc這個文件,最長一周改為十年;
- 還有robots.txt、.htaccess、favicon.ico、增加files目錄、鍊接cache/normal目錄、移動版本網站theme變動等一些修改。
準備來測試、實施逐步進行:
- 安裝一個全新的Drupal 7.12來試用各種功能、插件,體驗與Drupal 6的不同之處;
- 将一個(一個目錄放置一個網站)不重要站點Drupal 6.20升級到6.24,并将各種插件也都升級;
- 将一個(一個目錄放置一個網站)不重要站點6.24升級到7.12,并将各種插件也都升級;
- 将一個(一個目錄放置一個網站)重要站點Drupal 6.20升級到6.24,并将各種插件也都升級;
- 将一個(一個目錄放置一個網站)重要站點6.24升級到7.12,并将各種插件也都升級;
- 将一群(一個目錄放置多個網站)不重要站點Drupal 6.20升級到6.24,并将各種插件也都升級;
- 将一群(一個目錄放置多個網站)不重要站點6.24升級到7.12,并将各種插件也都升級;
- 将一群(一個目錄放置多個網站)重要站點Drupal 6.20升級到6.24,并将各種插件也都升級;
- 将一群(一個目錄放置多個網站)重要站點6.24升級到7.12,并将各種插件也都升級;
- 以後的各種網站再從7.12開始保持升級。
這個過程今天就開始,很快就會對本人這個個人網站也下手升級了,希望能順利一點,不要明天就打不開我的個人網站了,哈哈 😊
评论