首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

创建 Drupal 多站点安装(1)简介

创建 Drupal 多站点安装(1)简介

系统管理员或开发人员有许多理由选择采用一种多站点配置在同一个服务器上托管多个站点。例如以下这种配置:
  • 使您能够构建一个高效的开发环境
  • 允许您在公开站点之前暂存并测试它
  • 允许在同一个站点上运行不同软件
  • 支持跨多个站点共享单个代码库
  • 利用共享的托管主机
  • 允许在同一个服务器上运行类似的安全(基于安全套接字层的 HTTP [HTTPS])和标准 (HTTP) 站点
  • 简化服务器管理
但是,不是所有这些理由都可以通过 Drupal 的多站点特性得到最好的处理。本文将重点介绍一种战略:如何使 Drupal 内置的多站点支持在单个 Drupal 实例中创建和提供多个站点。
基本考虑因素使用 Drupal 内容管理系统 (CMS) 创建多站点配置具有多项明显的优势,其中一个优势是它可能最容易设置和维护的配置。另一个优势是数据重复率得以最小化,因为 Drupal 仅安装在服务器的某个位置上。最后,Drupal 拥有丰富的贡献模块,可用于完善多站点处理,向布局的所有站点提供高级功能。结合使用新增的特性和简化的管理,任何希望设置和管理多站点布局的人都能从中受益。尽管如此,使用这种配置也有一些缺陷,其中两个特别值得一提的缺陷是:安全性和共享。
多站点安装中的站点共享相同的代码,进而共享相同的文件。结果是,对于任何获取了服务器中某个站点的文件系统的访问权的人,他可以访问用于该多站点安装上的所有站点的文件。因此,在不同的人管理布局中的不同站点的情况下,这可能不太安全。如果站点之间的安全性是一个主要问题,或者如果不同人管理不同的站点,那么 Drupal 的内置多站点功能可能不是最佳的解决方案。相反,可考虑为每个站点提供自己的不同 Drupal 实例。尽管多站点布局带来更容易管理的优势将会失去,但您的站点可以更有效地避免出现意外情况。
第二个问题(共享)与数据库访问密切相关。尽管 Drupal 的多个站点可以共享相同的源代码,但它们不共享相同的数据库数据。因此,在默认情况下,无法从其他站点访问某个站点中的节点、用户和注释。此行为实际上可被视为一种优势,但在管理员可能需要所有站点共享信息的情形下,这可能体现为 Drupal 的多站点特性的设计不足。无论如何,Drupal 内置多站点支持的最佳平衡点是,模块、主题和上传的文件可以跨所有站点进行共享。此外,相同或自定义的文件可保留在配置好的不同站点所对应的不同文件夹中。如果共享所有内容非常重要,那么可以考虑使用多域特性,该特性很容易通过同名模块实现。
安装用于多站点的 Drupal 下载 Drupal 压缩文件后(请参阅 ,以获取相关链接),解压文件并将得到的文件夹复制到 Web 服务器的文档根目录中。采用适当的 FTP 客户端,此任务很容易完成;在使用服务器的安全 Shell (SSH) 方法的情况下,此任务更容易完成。运行 wget 命令从存储库下载该压缩文件,解压该文件,生成 Drupal 安装文件夹。(如果开发环境是本地的,则支持更多的选项。)。将安装文件夹命名为 /goodsite。
我们将为此练习创建 3 个不同的站点;因此,需要 3 个不同的数据库,一个数据库对应一个站点。如果使用来自服务器的 Cpanel 的 phpMyadmin,那么此任务很容易完成。接下来安装框架。但是,在使用 Web 浏览器运行安装程序之前,必须执行两个任务:
  • 为 Drupal 提供您要运行的站点的信息。
  • 将特定于站点的配置数据从 Drupal 传递到所有站点。
要完成第一个任务,需要为每个站点创建一个特殊目录。对于第二个任务,可以找到每个目录中的一个设置文件。目的是设置一个包含两个子站点的主安装。每个子站点共享与核心相同的文件,但每个子站点拥有自己独立的 URL 和数据库。要创建站点的 URL 为:
  • 主站点:http://goodsite.com
  • 子站点 1:http://bettersite.com
  • 子站点 2:http://bestsite.com
返回列表