logo

Palette - Make it Colorful🎨

Palette - Visual Page Builder, no design degree required.

Live Demo Download Palette

滚动

Drupal 8 多站点文件夹结构

04/10/2025, by Ivan

下面是一个 Drupal 8 多站点结构示例。为简洁起见,其他 Drupal 核心文件夹和文件未列出。

多站点结构:

-- core

-- modules
   -- contrib
   -- custom

-- themes
   -- contrib
   -- custom

-- sites
   -- site1
         -- modules
            -- custom
            -- contrib
         -- themes
            -- custom
            -- contrib
         -- files
   -- site2
         -- modules
            -- custom
            -- contrib
         -- themes
            -- custom
            -- contrib
        -- files
   -- site3
         -- modules
            -- custom
            -- contrib
         -- themes
            -- custom
            -- contrib
        -- files

DevOps 场景:

在多站点环境中,通常每个网站的维护者都会管理自己的网站代码。在复杂环境中,前端开发人员也希望生产环境的部署能够独立于常规的 Drupal 部署。下面是一个示例,展示了 Drupal 8 的多站点文件夹如何通过多个代码仓库进行分离。假设每个网站都有自己的数据库并共享通用代码,如下所示:

.                    ----> 仓库 1(所有开发者共享)
-- core                                                           

-- modules
   -- contrib
   -- custom

-- themes
   -- contrib
   -- custom           ----> 仓库 2(由前端开发者管理)

-- sites
   -- site1            ----> 仓库 3(由 site1 开发者管理)
         -- modules
            -- custom
            -- contrib
         -- themes
            -- custom
            -- contrib
         -- files
   -- site2            ----> 仓库 4(由 site2 开发者管理)
         -- modules
            -- custom
            -- contrib
         -- themes
            -- custom
            -- contrib
        -- files
   -- site3            ----> 仓库 5(由 site3 开发者管理)
         -- modules
            -- custom
            -- contrib
         -- themes
            -- custom
            -- contrib
        -- files

这种模型具有以下优势:

1. 前端开发人员可以进行独立于常规 Drupal 部署的前端部署。

2. 每个网站维护者都可以独立进行部署(例如,每个网站维护者可以拥有自己的发布时间计划)。