为何你不该该自行更新 Drupal 网站?

  (译注:这篇文章主要仍是针对于非专业人员及我的Drupal站长,对于专业的 Drupal 团队和公司而言 Drupal 的升级更新都有规范的操做流程,彻底是屡见不鲜,不可能出现文中出现的这些状况。尽管如此,里面也仍是有一些内容值得你们了解。)数据库

  有时我但愿Drupal的升级和维护可以像Wordpress那样简单就行了,轻轻一点,Wordpress就可以在不影响其运行的状况下完成自身以及全部插件的更新。Drupal则彻底不同,稍有不慎你就会把你的网站搞瘫。安全

  Drupal 之因此这么难搞是由于它的不少模块都须要依赖于其它模块才能够正常运行,这正是它得以模块化、灵活以及便于集成的优势,但这同时也是一件坏事,由于你必须对全部这些关系有所了解,才能在升级出现问题时进行排查。服务器

  许多 Drupal 站点的管理者,并不了解蕴藏在 Drupal 表面之下的事物是怎样结合和运做的。因此当他们看到“你有可用的安全更新”时,便以为有必要试试进行更新——“嘿,我能够更新Windows,更新一下Drupal能有多难?”——若是你不是Drupal工程师、建站人员或者任何了解站点构造的人,建议你仍是寻求专业人事的帮助和支持。网络

 

使用Drupal内置更新功能进行更新?模块化

  使用Drupal内置的更新机制进行更新是咱们所知道的最多见错误。尽管表面上它看起来即简单又好用,但问题是若是一旦出错,你便没法回头了——Drupal崩溃后你便再也不可以进入网站进行操做,即便有备份,也不能经过 Backup & Migrate 模块进行恢复。测试

致使Drupal崩溃或失败的常见缘由有如下一些:网站

  • 下载内核或模块更新出错spa

  • 网络链接断开中断更新进程插件

  • 更新版本与其它模块不兼容版本控制

  • 更新版本与服务器上其它组件不兼容,如当前使用PHP版本

  • FTP出错

  • 文件系统出错(如权限出错)

  不少用户都是线上的网站直接进行操做,这样作最坏的状况是网站出错而不能用了,你的用户和客户会所以流失。若是网站下线时间过长,也能够同 Google 和百度说拜拜了。

 

使用FTP对Drupal进行更新?

  若是你比较精明,使用 FTP 对 Drupal 进行更新或升级,相对而言会安全不少,但也不是绝对安全。若是你对Drupal的目录结构不够了解,则极可能将文件上传到错误的目录、覆盖错误的文件,或者漏掉 .htaccess 这样的隐藏文件。

  曾经有一次,一个客户将同一个模块上传到3个不一样的目录并疑惑网站为何运行得那么慢。他并不知道,Drupal尝试3次加载那个模块并致使内存泄漏。因此最好知道东西应该放在哪里,不然极可能会出问题。

  使用FTP进行更新的另外一个问题是,你依然是将更新模块上传到你的线上站点,不管是模块或PHP不兼容,均可能致使出错而让站点下线。除非你从新恢复以前的文件或者找到问题的解决办法。(译注:若是升级以后还运行了数据库更新,恢复文件可能也不能解决问题)

 

应该怎样正确地进行升级?

  首先,永远永远永远不要在线上站点直接进行内核或模块升级,永远不要。专业的Drupal团队会使用模拟服务器(或称开发服务器、测试服务器)对你的网站更新进行测试和调试,从而确认是否全部的更新都是无害且不会致使网站损坏。这样,能够在不影响线上网站正常运行的状况下对问题、错误进行处理和修复,尽可能保证用户、客户、Google和百度不会由于网站升级出错而离你而去了。

  同时,使用 Git 对全部更新进行版本控制,以便确保当升级出现问题时,能够更方便地查找问题和进行恢复。

  一旦全部更新都确认OK,即可以放心的将它们上传到线上服务器。更新时使用 Rsync 或 Git,尽可能不要使用FTP,前者会更快速、更智能。

 

写在最后

  当Drupal更新发布后,应该至少在一个月内进行更新,若是更新涉及安全问题,则更新周期还应该更短。(译注:若是是安全更新,应该尽快进行。若是非安全更新,没必要操之过急

  虽然极可能平时 Drupal 网站的平常维护都是由大家本身负责,但须要对 Drupal 进行升级更新、或者网站出现问题、须要服务或技术支持时,仍是应该将将其交由专业人士处理。这样会节省你的时间和减小头痛,并让你能够将精力集中你的公司业务而非网站上。

相关文章
相关标签/搜索