Drupal专业开发指南(62)–第22章 Drupal 优化(2)

9 30日 2008 分类: Drupal

特定于 Drupal 的最优化

大多数针对 Drupal 的最优化措施都在软件堆栈的其它层次中进行,也有一些专门针对 Drupal 本身的最优化措施,这也能使性能得到极大提升。

页面缓存

有时,一些简单的事情会被忽略掉,这也是为什么需要再提一次它们的原因。Drupal 拥有各种内置的方式,它能够通过为匿名用户存储和发送压缩了的缓存页面,来减少数据库的负重。通过启用这一缓存,你可以使用一个单独的数据库查询来高效的 读取页面,而不是使用许多查询来获取页面(在没有缓存可用时就使用这种方式)。Drupal 的缓存默认是禁用的,它可以在 Administer > Site configuration > Performance 中配置。更多信息参看第15章阅读全文 »

Drupal专业开发指南(61)–第22章 Drupal优化(1)

9 30日 2008 分类: Drupal

Drupal 的内核架构非常简洁并且非常灵活。然而,这种灵活性是有代价的。当启用的模块增加时,处理一个请求的复杂度也会增加。这意味着将耗费更多的服务器资源,必 须实现一些策略,在一个站点日渐流行时,来保证 Drupal 的极其著名的灵活性。通过适当的配置,Drupal 可以很容易的满足用户的需求。在本章中,我们将讨论性能(performance)和可升级性(scalability)。性能指的是你的站点响应一个请 求所用的时间。可升级性指的是你的系统可以同时处理多少个并发请求,通常用“请求数/秒”来度量。 阅读全文 »

Drupal专业开发指南(60)–第21章 Drupal 开发最佳实践(3)

9 30日 2008 分类: Drupal

测试和开发代码

单元测试就是用来将成分分割成不同的独立单元,并决定每一单元的行为是否和期望的一样。尽管 Drupal 没有一个核心的单元测试 API,但它拥有一个相关的学习小组(http://groups.drupal.org/unit-testing),而且它还有一些工具用来帮助开发 者创建更高质量的代码。其中最著名的一个就是第3方模块 — devel.module。 阅读全文 »

利用版本控制

版本控制对于任何软件项目都是必须的,同样对于 Drupal 社区也不例外。版本控制追踪 Drupal 中的每个文件的所有的修改。它保存了每个版本的历史信息以及作者。你可以明确的得到一个,关于谁修改了在什么时间以及为什么修改的报告。版本控制也可以简 化向公众发布一个新版本的流程。Drupal 社区使用经过锤炼的可靠的 CVS 软件来维护它的版本历史。

版本控制的好处不仅仅适用于管理 Drupal 工程。你也可以利用 Drupal 的 CVS 来帮助维护你的基于 Drupal 的工程并且能极大的提高你的维护成本。首先,你需要改变一下你安装 Drupal 的方式。 阅读全文 »

Drupal专业开发指南(58)–第21章 Drupal 开发最佳实践(1)

9 30日 2008 分类: Drupal

在本章,你将找到所有的代码小提示和最佳实践,这将使你从 Drupal 开发者中脱颖而出,并帮你摆脱电脑的折磨。

代码规范

Drupal 社区已经达成一致,它的代码基础必须拥有一个标准的外观,从而提高可读性,也使得初学者更容易的学习。社区也鼓励第3方模块的开发者采用这些标准。

行缩进

Drupal 代码缩进使用两个空格,而不是 tab 键。对于大多说编辑器,你都可以设置一个偏好,从而自动的使用 tab 键代替空格,这样你就可以继续使用 Tab 键了 - 如果你习惯使用 tab 键的话。 阅读全文 »

使用 db_query() 来确保查询语句的安全

攻击网站的一个常见方式称为 SQL 注入。让我们看一个没有考虑安全性的人编写的模块。这个人仅仅想用一种简单的方式列出特定类型节点的所有节点的标题: 阅读全文 »

使用 filter_xss()

跨站脚本(XSS)是攻击网站的一种常用方式,攻击者可以向一个网页插入他/她自己的代码,然后使用这些代码进行各种破坏活动。

注意:XSS 攻击的例子,参看 http://ha.ckers.org/xss.html。

假定你允许用户向你的网站输入 HTML,期望他们这么输入

Hi! My name is Sally, and I… 阅读全文 »

编写安全的代码

几乎每天我们都可以看到关于这种或者那种软件具有安全漏洞的头条消息。对于每个严禁的开发者来讲将恶意用户拒之门外是头等大事。

一个带有恶意的用户可以使用多种方式来攻击你的 Drupal 站点。这些攻击方式中包括,向你的系统中注入代码并让它执行,操纵你数据库中的数据,查看用户无权访问的资料,通过你的 Drupal 站点发送垃圾邮件。在本章,我们将学习如何编写安全的代码来阻止这些攻击。

幸运的是,Drupal 提供了一些工具用来很容易的消除这些常见的安全漏洞。 阅读全文 »