Bir sunucuda yeni bir Drupal sitesi oluşturma konusundaki pratiğim, web sunucusunun (tipik olarak Apache) grubunun bir parçası olan bir kullanıcıya sahip olmak ve bu kullanıcının tüm Drupal dosyalarına sahip olması. Ubuntu'da bunlar için ayarlanan komutlar:
# Create a new example user, setting up /var/www/example as their home dir.
useradd -s /bin/bash -d /var/www/example -m example
# Now add that user to the Apache group. On Ubuntu/Debian this group is usually
# called www-data, on CentOS it's usually apache.
usermod -a -G www-data example
# Set up a password for this user.
passwd example
Bu ayarları yaptıktan sonra, bu kullanıcı olarak oturum açıp Drupal'ı / var / www / example / docroot ya da benzeri bir yere yükleyeceğim ve ardından dosyalar dizinini el ile oluşturacağım ve settings.php dosyasının üzerine kopyalayacağım. Drupal'da kopyalamadan önce örnek kullanıcı olarak giriş yaptığımızdan, dosya sahipliğimiz ve izinlerimiz otomatik olarak tüm çekirdek Drupal dosyalarında ve komut dosyalarında (.htaccess dosyaları da dahil) düzgün şekilde yapılandırılmalıdır.
su - example
cd docroot
cp sites/default/default.settings.php sites/default/settings.php
# Temporarily give the web server write permissions to settings.php
chgrp www-data sites/default/settings.php
chmod g+w sites/default/settings.php
Şimdi dosya dizinini ayarlayalım.
# Create the directory.
mkdir sites/default/files
# Now set the group to the Apache group. -R means recursive, and -v means
# verbose mode.
chgrp -Rv www-data sites/default/files
Daha sonra, web sunucusunun her zaman bu dizinde bulunan herhangi bir dosyaya yazabilmesi için izinleri ayarlayacağız. Bunu chmod komutumuzda 2775 kullanarak yapıyoruz. 2, grup kimliğinin bu dizinde oluşturulan tüm yeni dosyalar için korunacağı anlamına gelir. Bunun anlamı, www - verilerinin her zaman herhangi bir dosyadaki grup olacağı ve böylece web sunucusunun ve kullanıcının her zaman bu dizine yerleştirilen yeni dosyalara yazma izinlerinin olmasını sağlamaktır. İlk 7, sahibinin (örnek) buradaki herhangi bir dosyayı R (Oku) W (Yaz) ve X (Yürütme) yapabileceği anlamına gelir. İkinci 7, grubun (www-data) bu dizindeki herhangi bir dosyayı RW ve X ile de verebileceği anlamına gelir. Son olarak, 5, diğer kullanıcıların R ve X dosyalarını yapabileceği, ancak yazamayacağı anlamına gelir.
chmod 2775 sites/default/files
Bu dizinde mevcut dosyalar varsa, web sunucusunun üzerlerinde yazma izinleri olduğundan emin olun.
chmod g+w -R sites/default/files
Şimdi Drupal kurulmaya hazır. Tamamlandığında, settings.php'ye geri dönmek ve tüm kullanıcıların yalnızca okuma izinlerine sahip olduğundan emin olmak ÇOK önemlidir.
chmod 444 sites/default/settings.php
Bu kadar! Bu kurulum, dizinin sahibi olan kullanıcının veya web sunucusunun, dosyalar dizinine dosya yazamadığı / değiştiremediği / silemediği durumlardan kaçınmanızı sağlar.