关于Drupal

Drupal是一个强大的软件,它可以让个人或社区使用者很容易地发表、管理并组织一个网站里大量且多样的内容。已经有许多个人和组织采用Drupal来建立各种不同的网站,包括:

Drupal包括以下的功能:

还有更多更多!

Drupal是一套采用GPL授权的开放源码软件,是由数以千计的使用者和开发人员所共同维护和开发的。如果你喜欢Drupal为你所作的一切,请与我们一起努力,扩充并改善Drupal,以更符合你的需求。

Drupal适合你吗?

Drupal适合你吗?

Drupal是一个高度客制化、模块化的内容管理系统。仔细考虑您所需要的特色和功能, class=SpellE>Drupal有可能是您的最佳选择。

在您回答Drupal是否适合您之前,我们有问题要先问您:您是哪一种类型的 class=SpellE>Drupal使用者?您的需求是什么?

我是一个Blogger,我想要...

  • 单一使用者和多个使用者的 class=SpellE>Blog
  • 分类内容
  • 评论功能
  • 引用功能
  • 使用范例与客制版型来自订样式和版面
  • 可透过他人提供的模块(也就是插件)来支持图片和其它媒体类型

所需技术等级:一般使用者、管理者

我正在替我的组织 lang=EN-US>/公司评估Drupal,我们想要 lang=EN-US>...

  • 可自订的使用者角色和权限
  • 牢靠的安全机制
  • 延展性
  • 能够进行设置和延伸,以符合特定的业务需求
  • 支持的基础建设(文件、社区等等)
  • 能够将内容分门别类
  • 额外的特色和功能

所需技术等级:评估人员、一般使用者

我是社区创办人,我想要 lang=EN-US>...

  • 让社群成员可以彼此分享( class=SpellE>blog、讨论区、文件等等)
  • 让成员可以自我组织:活动、义工、联络信息、工作群组、邮寄名单
  • 可以随着社群的茁壮而同步成长的网站(跟得上时代脚步)
  • 支持的基础建设(文件、社区等等)
  • 可自订的使用者角色和权限
  • 安全的网站(安全性、广告垃圾、访问控制等等)

所需技术等级:评估人员、一般使用者、管理者、网站开发人员(某种程度)

我是小公司的老板,我想要 lang=EN-US>...

  • 可以自己设置网站
  • 使用范例与客制版型来自订样式和版面
  • 可自订的使用者角色和权限
  • 延展性与弹性,以符合我的业务改变的需求
  • 能够将内容分门别类
  • 支持的基础建设(文件、社区等等)
  • 支持电子商务,包括:
    • 购物车
    • 付费订阅
  • 能够进行设置和延伸,以符合特定的业务需求

所需技术等级:评估人员、一般使用者、管理者、网站开发人员(有限程度)

我替客户建设或设计网站,我想要 lang=EN-US>...

  • 采用我的版型来自订网站外观
  • 额外的特色和功能
  • 能够很容易地为我的客户提供支持
  • 连结设计师和开发人员社群

所需技术等级:评估人员、管理者、网站开发人员(某种程度)

我是一个程序设计师,我需要 lang=EN-US>...

  • 一个可靠的、设计良好的、模块化的系统,让我可以客制化和进行延伸
  • 文件充足的 lang=EN-US>API
  • 系统和架构文件,以及程序撰写的准则
  • 连结设计师和开发人员社群
  • 丰富的特色

所需技术等级:管理者、程序设计师

您知道您想要成为哪一种类型的Drupal使用者吗?如果您知道,请看看下面的技术等级说明,以了解您的 class=SpellE>Drupal使用者类型所可能需要的项目。

  • 评估人员:熟悉网站术语和概念。
  • 一般使用者:熟悉浏览网页、点选连结、提交网页、选择项目等。
  • 管理者:管理角色、选择版型、分类内容、设定模块、安装与更新软件和数据库、安装安全性修正。
  • 网站设计师 lang=EN-US>/开发人员:安装软件、设计样式和版面(使用 lang=EN-US>CSS或一点点 class=SpellE>php)、建置并导入网站、评估模块适用性、熟悉 lang=EN-US>LAMP
  • 程序设计师: class=SpellE>php程序开发、管理数据库、通过定义良好的 lang=EN-US>API开发程序、设计数据库对象、评估现有解决方案并安装修正程序、与其它开发人员协同工作

现在,您已经知道您可以成为哪一种类型的Drupal使用者,接下来,您应该花一点时间,了解 class=SpellE>Drupal

lang=EN-US>案例研究部份,将检视 lang=EN-US>Drupal常见的应用方式,并针对所提到的运用方式展示一些实际采用 lang=EN-US>Drupal的网站。这里也会列出其它许多采用 lang=EN-US>Drupal的网站。

lang=EN-US>功能总部份,我们会介绍 class=SpellE>Drupal里最重要以及最常被使用的功能。

关于使用Drupal来架设网站、而非从头撰写一套网站的优点,则会在 lang=EN-US> lang=EN-US>自行开发vs. lang=EN-US>使用Drupal这篇文章里进行讨论。

Drupal的版本号说明

我该使用哪个版本的Drupal?
一般建议您使用最新的稳定版本,DrupalChina都会在首页醒目位置标志这些稳定版本的链接。您也可以直接到drupal.org查看。在某些特定情况下,比如某些您必需的模块还没有升级的时候,或者您的站点工作正常而您又没有足够的时间与资源来升级的话,继续使用旧版本也是个不错的选择。但是新版本推出时,常会弥补一些安全漏洞,您至少应该把这些安全补丁更新。

现在Drupal的最新的正式版本是5.1,下一个主要升级版本6.0正在开发中,并不适合作为正式站点使用。Drupal4.7.6是4.7系列中的最新版,4.7系列也还在维护中,但大多数新功能都不会再加入4.7版,如果您现在开始计划新的站点,应该直接考虑使用5.1正式版。

如何查看我的站点是哪个版本?
有以下几个办法:

如何解读Drupal版本号?
在4.7.x系列之前,4.7.x中的的前两个数字4.7代表Drupal的版本号,最后一个数字x代表这个版本下的第几次补丁发布,主要用于修正bug。这样带来的一个问题就是经常使大家误以为4.7只是4.6的一个小升级版本,其实4.7与4.6有非常大的不同;另一个常见的问题是4.7之后该是4.8还是5.0呢,经常给大家带来混淆。

所以从5.x开始,Drupal采用了新的版本号,其中“5”代表主要的版本升级,后面的.x代表这个版本下的第x次补丁更新。也就是说5.0,5.1,5.2等等都是基于同样的5.0结构,所有5.x的模块都是兼容的。而下一个主要版本将是6.x,6.x的模块将不能在5.x系统中使用,反过来也一样。

扩展模块的版本号又该如何解释?
2006年11月1日之后,drupal.org启用了新的项目管理模块,其中一个主要的变化就是扩展模块与主题的版本号采用了下面的新格式:

Drupal主要版本-模块主要版本.补丁更新号[-其它说明]

1)Drupal主要版本:这是必须的,比如4.7.3或者5.x等,表示该模块适用的Drupal主要版本号。4.7.x表示该模块适用于Drupal4.7系列,5.x表示该模块适用于5.x系列。
2)模块主要版本:用于标示该模块的主要版本分支,例如1.0,2.1等
3)不定更新号:用于标示这是该模块版本分支的第几次bug更新,第一次模块主要版本发布是0,下一次补丁更新就是1,以此类推。如果这个数字是x,则表示这是正在开发中的版本(参见下面第4条说明)
4)其它说明:这是一个可选项,用来一些特殊标示,比如-dev表示这是开发中的版本,一般是由drupal.org每天自动发布的最新CVS版本,不建议用于证实站点。

例如:
* 4.7.x-1.0 表示这是适用于Drupal4.7.*的模块,这是该模块主要版本号1的首次发布(1.0)
* 4.7.x-2.1 表示这是适用于Drupal4.7.*的模块,这是该模块主要版本号2下面的第一次不定更新(2.1)
* 5.x-1.0-dev 表示这是适用于Drupal5.*的模块,这是该模块主要版本号1.0的最新开发中版本(-dev),

什么是beta与RC版?
在一个Drupal新版本(比如5.0)发布之前,通常会先发布一系列beta(测试版)与RC(release candidate的缩写,可以叫做试发版)。一般来说这些版本还不够稳定,不宜用在正式站点上,只是用来提供给更多用户测试使用,以帮助正式版的发布。

通常在beta版发布几个月之前,Drupal代码就会进入功能特性冻结(feature freeze);比如计划中的6.0冻结将在2007年6月1日,在此之后,6.0的基本功能改进都已确定,其它任何新的功能改进都将只能等到7.0才能加入。

关于Drupal

利用软件Drupal,个人或者社区用户可以轻松地发布、管理和组织大量的网站内容。成千上万的人们和组织利用Drupal建立了大量的各类网站,包括:

  • 社区交流网站
  • 企业网站
  • 个人网站
  • 爱好者联盟网站
  • 电子商务网站
  • 资源目录网站
  • Drupal的功能特色包括:

  • 内容管理系统
  • 博客
  • 协作发表平台
  • 论坛
  • 新闻通讯
  • 图片画廊
  • 文件上传和下载
  • 以及更多功能。

    Drupal是GPL许可下的开源软件,众多用户和开发者组成Drupal社区来共同维护和开发这个软件。Drupal的下载和使用是免费的,如果您喜欢这个软件,请和我们一道来共同扩展和完善这个软件。

    历史、使命和社区(翻译中,进度7/12)

    Drupal 不只是一个软件,而是一个项目和社区。从这个页面可以了解更多

    History 历史
    Druplicon (the logo)
    The Drupal core Drupal 的核心
    Contributions 贡献(分享)
    Documentation and support 文档支持
    Users 用户
    Development and support 开发支持
    Security team 安全声明?处理中,很长。。。很懒。。。
    On backward compatibility: the drop is always moving 向后兼容性:drupal一直在前进
    When does a new version of Drupal get released? 何时会有新版本发布?
    Why isn't X feature part of core? 为什么 X的特性不是核心功能的一部分
    Usability aims 可用性目标

    1、历史

    2000年,Antwerp大学对学生开放了永久性接入互联网,Dries Buytaert 和 Hans Snijder在他们的学生宿舍之间建立了无线网桥,以便于8个人共享Han的ADSL猫。这在当时是非常奢侈的,但却发现有些缺陷:没有用来讨论或分享简单事物的手段。

    这激发Dries去开发一个小的基于web公告板的新闻站点,允许一群朋友给其他人留下关于网络状态的便条,通知他们去哪吃饭,或者分享一下值得关注的消息。

    直到Dries毕业这个软件还没有名字。这个群体决定把这个内部的网站放到线上,使得他们可以一直联系,保持分享有趣的发现,说说他们生活的片段。在找寻合适的域名时,Dries倾向于“drop.org” ,他键入"drop.org"的域名的时候发现是可用的。Drop德语中是小山村的意思,正好合适这个小团体的名字。

    drop.org在web上建立后,其用户开始讨论新的web技术,比如 moderation, syndication,排名,分布式认证。drop.org在这些讨论和意识流的影响下慢慢的转向个人体验的环境。这些关于web技术讨论开始在drop.org上尝试新的软件。

    稍后不久,2001年1月,Dries觉得把drop.org上的软件发布并命名为“Drupal”。目的是为他其他人使用并扩展实验性平台,便于更多人能够发现新的开发方向。Drupal发音为“droo-puhl”,由英文发音派生的德语单词“druppel”,意思就是“drop”

    要了解Drupal的更多历史,请看温哥华的Drupalcon(2006)大会视频。

    2、水滴图(logo)

    Drupal最初开发时,考虑要创建一个图标,当然,这个概念必须包含水滴或者通常意义上的水。

    最初的概念很简单,一个循环的水滴,像“O”流动水滴,

    后来,有人建议使用卡通类的带有表情的水滴。teven Wittens (UnConeD) 创建了3D版本,但是因为3D是个困难的工作,这个想法没有实现得很好。

    当logo的问题再次提出时,Kristjan Jansen (Kika) 提出把两种的水滴合在一起。把表情放入水滴中。在Steven Wittens稍后的努力下,水滴图产生了:一个大眼睛、圆鼻子和调皮的笑容--别具风格的水滴,

    你可以在 marketing sectio 中发现这个logo的更多版本。

    3、Drupal的核心程序

    • 创建者和领导开发者
      Drupal是Dries Buytaert创建的,他主要管理掌控整个软件和在主要目标变更的制定决策。在发展或是取消某些分支时,在大家(过去对Drupal的贡献而被他信任和依赖的人群)的评论中,他有特别的权重。
    • 核心委员会
      一个小团体,目的是修改和管理程序代码。他们仅仅是拥有向核心CVS目录写入权限的人。

      • 常任核心委员
        常任核心委员是Dries Buytaert。
      • 分支管理者
        现在的分支管理者分别是
        Gerhard Killesreiter (killes) for 4.7.x,
        Neil Drumm (drumm) for 5.x,
        Gábor Hojtsy for 6.x,
        Angela Byron (webchick) for 7.x.
        这些可以从文章中看到详细细节。
      • 管理者
        虽然没有直接决定权,但管理者对核心的代码设计(举例来说,一个通常的核心模块)有着形式上的责任。其个人责任的部分在文件MAINTAINERS.txt中列出。管理者由Dries指定。那些有着实质性贡献(通常是对于核心部分而不是独立管理)的核心贡献者可以申请管理者。Dries也可能单独邀请他们来做管理者。
    • 核心贡献者,
      是那些为Drupal核心程序贡献出代码补丁或文档的人。贡献者由Dries或其他核心委员会成员审查和决定。任何人都可以针对Drupal核心提交补丁

    4、贡献(分享)

    • 贡献管理者
      CVS Drupal的非核心贡献CVS(主要是模块和主题)有一个检查和核准CVS的应用的维护者,以及在申请并得到维护者允许或替代的一个或其他更多的团队成员
    • 贡献者
      贡献者开发和维护“贡献代码”,这些代码置于Drupal站主机上,但不是Drupal核心的一部分。一个“贡献代码”的贡献者需要申请通过“贡献代码”CVS的写入权限。贡献者总体上可以促进Drupal的产品化并分享可以被其他人使用的增强功能。贡献者的名字通常在下载的模块或主题内地Readme和Credits文件中列出。

    5、文档和支持

    文档和支持由Drupal社区合作提供。成员们按drupal的用途和技术水平分别予以说明。记住,你是和他人打交道,所有请注意礼节。

    注意,文中链接均为drupal主站链接,英文版。

    6、用户

    • 用户
      用户数安装和配置drupal站点的人。用户不需要贡献代码,但是可以通过在发行系统httt和 参加drupal.org的论坛 http
      提交bug和需求来做出贡献。

    • 最终用户
      最终用户通常是用户站点用来服务的那个群体。一般来说,最终用户不使用drupal.org,但是站点的开发者需要给他们进行设置。

    7、开发支持

      开发与支持

      作为一个交流中心和项目管理空间,drupal.org包括使用drupal作为个人站点的用户。为客户打造Drupal的IT专业人员、程序员、作家和其他对drupal开源项目成长做出贡献的人。成员们一起工作以维护站点上的详尽的开发和支持资源。

      • 支持
        用户在安装和配置Drupal感到困难时,首先查看管理者手册。手册能够对drupal的整个安装环节的管理部分提供帮助。如果文档里没有提供解决方案,可以在支持论坛和drupal-support邮件列表里搜索。如果还是找不到,请把包括drupal版本/号等详细的问题描述提交到相关地方。注意,所以的支持是基于志愿者的,并依赖社区成员的良好愿望。请耐心对待支持的请求。
      • 开发
        Drupal开发者手册包括了Drupal结构、API参数、主题和模块开发者手册、已经贡献项目代码指导。bug跟踪系统将用于提交bug,新特征的想法、发展drupal.org的建议、文档和可用性的概念。我们会认真的考虑加入drupal的开发版本列表中。

      了解更多
      参考下面的链接以得到更多信息,手册的其他部分,主要论坛

    8、安全小组 (这个好长啊,还有3个子链接)

    安全小组的目标

    • 处理安全性问题
    • 持续性检查潜在的安全弱点
    • 对贡献模块的维护人员提供安全问题的协助
    • 提供如何编写安全代码的文档

    如何报告安全问题

    如果你发现或知道了一个可能影响到Drupal的l潜在错误、弱点、或威胁,请用邮件告知Drupal安全小组:secruity@drupal.org。
    请提供尽可能多的细节,如系统环境、Drupal版本,使用的模块及其版本等等。
    更多信息请看如何报告安全问题.

    我们是如何处理安全问题的

    • 审查所有Drupal发行版的问题和评估潜在的影响
    • 如果核实存在问题,安全小组将会行动起来解决此问题
    • 新版本的创建和测试
    • 创建新的包文件并上传到Drupal目录
    • 我们将利用所有可能的通讯方式来确保大家都知道安全问题的发现和解决,也包括drupal的管理者用以保护他们系统所需采取的每一步行动。

    推荐的核心安全升级

    这里是从2007年以来关于drupal的安全报告,由一位高中学生Jesse Crawford 在Google Highly Open Project记录。

    安全公告和发布过程
    The security team believes that providing security requires more than simply posting a patch to Drupal.org. The security team recognizes that hundreds of thousands and maybe even millions of people rely on the Drupal security team to notify them of known vulnerabilities. In the third quarter of 2007, the security team adopted a coordinated security release policy to help raise awareness of security issues and to make managing security patches manageable. The security team now coordinates security announcements in release cycles and evaluates whether security issues are ready for release several days in advance. Most importantly, the security team is coordinating with the Drupal maintainers, particularly the Drupal 6 maintainers, to ensure security releases are coordinated with major Drupal releases, such as betas and release candidates. This improves the visibility of security releases and allows for effective coordination of the maintainers and security team resources. However, this has lead to several complaints that individual patches are not being released quickly enough.

    安全销售相信提供安全性比简单的在drupal.org上发布补丁更有需求。安全小组认为成千上万甚至可以超过百万的人群依赖drupal安全小组来提醒他们已知的漏洞。在2007年第三季度,安全小组采用了

    We believe that we must consider the needs of the site maintainers and their ability to have regularly spaced security announcements. We must also consider the effective use of the security teams limited resources to remain vigilant and available over the the long term of the Drupal project. If you have a concern with the response time of your security release we welcome you to publicly discuss this policy, but would ask that you leave the details of any non-disclosed release private until the security team creates an official release.

    Disclosure policy

    Our policy is one of full disclosure; we will never withhold information about a security problem and hope that it won't be discovered by others. However, public announcements will only be made when the threat has been addressed and a secure version of Drupal is available. We ask that when reporting a security issue, you observe these same guidelines, and beyond communicating with the security team, do not share your knowledge of security issues with the public at large.

    我们支持哪个版本

    • 只有当前和一个后面版本的drupal是被支持的(目前是6和5)。以前的不在活跃的版本的drupal将不会得到安全代码的发布。因此不推荐使用不支持的版本的drupal。请升级以便你能从安全发行上受益。
    • Drupal的开发版还没延伸为产品,当安全问题修复的时安全公告也不会发布。如果你正在使用开发版分支进行测试,我们希望你知道你需要经常升级代码
    • 安全小组将检视建立在Drupal发行版核心的代码的安全性,包括贡献模块的安全性和代码行,请参考下面的流程

    贡献模块的安全问题

    一旦我们发现drupal贡献模块的安全问题,我们将通知模块维护者并限定时间。一旦维护者开始修复问题,安全小组将提供帮助升级的指导和建议。如果维护者没有在指定时间内解决问题,虽然无法给出指导,但是我们仍然会建议不要启用此模块,而且同时我们将会停掉此模块。

    如何能帮点忙?

    你能提供的最大的帮助是检查补丁的安全效果,你也可以通过报告问题或和小组一起修复来帮助我们。

    安全小组成员

    还有3个子链接
    * HOWTO: Report a security issue
    * My site was defaced ("hacked"). Now what?
    * Contacted by the security team. Now what?

    特点一览

    特性概述

    一般特性

    用户管理

    内容管理

    博客

    平台

    管理分析

    社群特性

    性能和可伸缩性

    ============================================
    感谢Cartson!

    Note:原文Feature overview,同时参考了Drupal Taiwan的繁体翻译