回答:
マルチサイトのセットアップは、同じコードベースに依存しているため、少し注意が必要です。このシナリオではマルチサイト設定を使用できますが、でモジュールをアップグレードするとsites/all/modules
、すべてのサイトに影響することに注意してください(でオーバーライドされない限りsites/$SITENAME/modules
)。
これは、サイトの1つがモジュールのNバージョンに依存しているが、別のサイトでN + 1を使用したいという潜在的な問題につながります。問題のモジュールにはアップグレードパスがないか、バージョン間で機能が大幅に変更されている可能性があります(メジャーバージョンに対するDrupalの文化を考えると、想像するほど珍しいことではありません)。
さらに、モジュールのアップグレード中に重要なデータベースの変更が必要な場合は、を実行するために複数のサイトを同時に停止する必要があることがわかりますupdate.php
。
そのため、ほとんどのユースケースでは、マルチサイトは使用できません。本当にスペースに縛られているか、各サイトのドメインを個別のフォルダーにマッピングできないような奇妙なホスティング制限がある場合を除き、個別のコードベースを維持し、Drushやバージョン管理などのツールを使用してコードを高速化することをお勧めします展開。
制限のあるホストの回避策として使用する以外の、マルチサイトの典型的な使用例は、非常に類似した大量のサイトを展開する場合です。あなたはホスティングサービスを実行しているかもしれませんし、会社のためにたくさんのマイクロサイトを構築しているかもしれません。そのような場合、独自のマルチサイトセットアップをロールできますが、Aegirの使用も検討する必要があります。
マルチサイトのセットアップに新しいサイトを追加する非常に簡単です:の下に新しいフォルダを作成しsites
、編集sites/sites.php
(Drupalの7のみ)、コピーsites/default/default.settings.php
にsettings.php
、新しいフォルダに、ブラウザでサイトを参照してください。Drupalはインストールプロセスを開始し、新しいフォルダーを使用する必要があります。新しいサイトはsites/all/modules
、既存のサイトと同じように、すべてのモジュールにアクセスできます。
git clone git@my.repository.com:/base.git newsite
するだけでクリーンな環境が得られます。
関連するコンテンツを提供しているが、異なる視聴者向けのマルチサイトを使用します。
たとえば、複数のブランドをサポートするイントラネットに使用します。これにより、コンテンツ/ユーザーを共有するオプションを使用して、各ブランドを個別に管理できます(重複を減らすための時間を大幅に節約できます)。
また、独自のインターフェイス(メニュー/ブロック/テーマ)を使用すると、さまざまな部門が最も重要なものに簡単にアクセスできるようになります。
ユーザーがデフォルトサイト、サブドメインごとに異なるサイトを設定できるようにするため(たとえば、marketing.intranet.localまたはengineering.intranet.localなど)、サイト間の検索、アクセス制御など、ドメインアクセスを使用して多くの機能を利用できます。。