Ne zaman çoklu site kurulumu kullanmalıyım?


13

Birbirleriyle ilgisi olmayan 4 Drupal sitem var, ancak hepsi Drupal'da çalışıyor ve hepsi benim tarafımdan yönetiliyor.

Her sitenin ihtiyaç duyduğu modüller değişiklik gösterir, ancak muhtemelen bazı küçük modül alt kümelerini paylaşırlar.

Bu durum çok sahalı yapılandırmayı kullanmak için iyi bir aday mı?

Beşinci bir site eklemek istersem ne olur? Yenisini nasıl yüklerdim veya bu nasıl çalışır?

Yanıtlar:


11

Çok alanlı kurulumlar, aynı kod tabanına güvenmeleri nedeniyle biraz karmaşıktır. Bu senaryoda çok siteli bir kurulum kullanabilirsiniz, ancak bir modülü yükselttiğinizde sites/all/modulestüm siteleri etkileyeceğini (geçersiz kılınmadıkça sites/$SITENAME/modules) unutmayın.

Bu, sitelerinizden birinin bir modülün N sürümüne bağlı olduğu, ancak N + 1'i başka bir sitede kullanmak istediğinizde potansiyel sorunlara yol açar. Söz konusu modülün bir yükseltme yolu olmayabilir veya sürümler arasındaki işlevselliğini büyük ölçüde değiştirmiş olabilir (Drupal kültürü büyük sürümlere göre düşünüldüğünde düşündüğünüz kadar yaygın değil).

Ayrıca, bir modül yükseltmesi sırasında kritik veritabanı değişiklikleri gerekiyorsa, çalıştırdığınızdan emin olmak için aynı anda birden fazla siteyi kaldırmanız gerektiğini görürsünüz update.php.

Bu nedenle, çoğu kullanım durumunda, çoklu site gitmenin yolu değildir. Gerçekten yer kaplamıyorsanız veya her sitenin alan adını ayrı bir klasöre eşlemenizi engelleyen garip bir barındırma kısıtlamanız yoksa, ayrı kod tabanlarını korumak ve kodu hızlandırmak için Drush ve sürüm kontrolü gibi araçları kullanmak daha iyi olur konuşlandırma.

Kısıtlı ana bilgisayarlar için geçici bir çözüm olarak kullanılmasının dışında, çoklu site için prototip kullanım örneği, son derece benzer bir ton siteyi dağıttığınız zamandır. Bir barındırma hizmeti çalıştırıyor olabilir veya bir şirket ya da sahip olduğunuz şey için bir grup mikro site oluşturuyor olabilirsiniz. Bu durumlarda, kendi çoklu site kurulumunuzu yuvarlayabilirsiniz, ancak böyle bir kurulumu çalıştırmanın zorluklarını otomatikleştiren ve soyutlayan Aegir'i de kullanmayı düşünmelisiniz .

Bir çok site kurulumu yeni siteler ekleme oldukça basittir: altında yeni bir klasör oluşturmak sitesdüzenlemek, sites/sites.php(sadece Drupal 7), kopyalama sites/default/default.settings.phpiçin settings.phpyeni klasörde, ve bir tarayıcıda sitesini ziyaret. Drupal kurulum işlemine başlamalı ve yeni klasörü kullanmalıdır. Yeni siteniz, sites/all/modulestıpkı mevcut siteleriniz gibi altındaki tüm modüllere erişebilecek .


Bu oldukça havalı. Bu aslında semboller ve modüller klasörü ile ilgili diğer sorumla ilgili. Geliştirme ortamımda yeni bir test sitesi başlattığımda aynı rutini tekrarlamaktan yoruldum ve ayrıca modülleri (özellikle özel modülleri) birden fazla projeye kopyalamaktan bıktım (güncellemeyi zorlaştırıyor). Bu yüzden, en azından geliştirme sırasında, çoklu site yaklaşımını kullanabilirim.
sameold

Drupal gelişimi için kullandığım @sameold, alt modüller olarak kullanılması gereken modülleri içeren bir git deposudur. O zaman sadece git clone git@my.repository.com:/base.git newsitetemiz bir çevre elde etmek için koşmak meselesi .

4
Bir alternatif temel kurulum için bir drush make dosyası olacaktır. Siteleri / sites.php'yi düzenlemek için başka bir küçük not isteğe bağlıdır ve yalnızca D6'da olduğu gibi varsayılan arama çalışmadığında (örn. Tek bir site için birden fazla etki alanına sahip çoklu site) gereklidir.
Berdir

2

Farklı kitleler için alakalı bir içerik teklifinizin bulunduğu bir Çoklu site kullanırım.

Örneğin, birden fazla markayı destekleyen Intranet'imiz için kullanıyoruz. Bu, her markanın içeriği / kullanıcıları paylaşma seçeneği ile ayrı ayrı yönetilmesini sağlar (çoğaltmayı azaltmada büyük zaman tasarrufu sağlar).

Ayrıca benzersiz bir arayüze (menüler / bloklar / temalı) sahip olmak, farklı departmanların kendileri için en önemli olanlara kolayca erişmelerini sağlamak için uzun bir yol kat ediyor.

Etki Alanı Erişimi kullanılarak bir kullanıcının varsayılan sitelerini, alt etki alanlarına göre farklı siteleri ayarlamasına izin veren (Bu nedenle, marketing.intranet.local veya engineering.intranet.local vb.), Siteler arasında arama yapma, erişim kontrolü vb. .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.