<-
Apache > HTTP Server > Documentation > Version 2.0 > How-To / Tutorials

Kullanıcı başına web dizinleri

Çok kullanıcılı sistemlerde UserDir direktifiyle her kullanıcının ev dizinindeki web sitesine erişmesi sağlanır. http://ornek.com/~kullanıcıadı sayfasını ziyaret edenler, içeriği "kullanıcıadı" kullanıcısının ev dizininden alırlar. Bu dizin, UserDir direktifi ile belirtilmiş olmalıdır. UserDir

Bakınız:

top

Per-user web directories

top

Dosya yolunu 'UserDir' ile belirtmek

UserDir direktifi, her kullanıcı için ayrıca ayarlanmış içeriğin yükleneceği bir dizin belirtmeye yarar. Bu direktif birkaç değişik şekilde kullanılabilir. UserDir

Slash ile başlamayan bir yol verildiğinde, dizinin belirtilen kullanıcının ev dizinine göreli(relative) olduğu varsayılır.

UserDir public_html

Bu yapılandırmada, URL http://ornek.com/~kullaniciadi/file.html, /home/kullaniciadi/public_html/file.html olarak çevrilir.

(Çv. notu: yaklaşık '~' işaretinin ev dizininine çevrilirken kullanılmadığına dikkat edin. Ayrıca Unix ve Linux sistemlerde

kullanıcı dizinleri /home dizini altında yeralır; örneğin baris kullanıcısının ev dizini otomatik olarak /home/baris olarak ayarlanacaktır.)

Yol slash işareti '/' ile birlikte verilirse, dizin yolu bu yol artı verilen kullanıcı adı kullanılarak oluşturulur. Örneğin:

UserDir /var/html

URL http://example.com/~rbowen/file.html/var/html/rbowen/file.html olarak çevirilir.

(Başta / işareti vererek aramanın Unix-Linux standart yapısındaki /home dizini altında değilde kendi belirlediğimiz bir dizin altında yapılmasını sağlıyoruz. Güvenlik açısından yararlı olabilir. Yüksek derecede "paranoyak" sistem yöneticilerinin güvenlik sebebiyle standart dizin adlarını dahi değiştirdiği bilinmektedir)

Yol ifadesinde asterisk (*) işareti kullanılırsa, bu işaret yerine URL' de verilen kullancı adı koyulur. Örneğin;

UserDir /var/www/*/docs

 URL http://example.com/~rbowen/file.html , /var/www/rbowen/docs/file.html

top

Bu özelliği kullanabilecek kullanıcıları sınırlamak

UserDir dokümanında anlatılan yazım biçimini kullanarak, bu özelliği kullanabilecek kullanıcıları kısıtlayabilirsiniz:

UserDir enabled
UserDir disabled root jro fish

Yukarıdaki yapılandırma, UserDir özelliğinin 'disabled' ifadesiyle  engellenmeyen tüm kullanıcılar için geçerli olmasını sağlayacaktır.  Benzer bir şekilde, tüm kullanıcıları sınırlayıp  sadece bazı kullanıcılar için bu özelliğin geçerli olmasını sağlamak, aşağıdaki gibi bir ifadeyle mümkündür:

UserDir disabled
UserDir enabled rbowen krietz

Başka örnekler için  UserDir  dokümanına bakabilirsiniz.

top

Her bir kullanıcı için cgi dizinleri belirlemek

Her kullanıcıya kendi cgi-bin dizinini tahsis etmek için <Directory> direktifini kullanarak kullanıcı dizininin altındaki belli alt dizinleri cgi kullanılır hale getirebilirsiniz.

<Directory /home/*/public_html/cgi-bin/>
Options ExecCGI
SetHandler cgi-script
</Directory>


Eğer UserDir' in public_html olarak atandığını varsayarsak, example.cgi adındaki bir CGI programı bu dizinden şu şekilde yüklenebilecektir:

http://example.com/~rbowen/cgi-bin/example.cgi

top

Kullanıcıların, yapılandırmalarını değiştirmelerine izin vermek

Eğer kullanıcıların kendi web alanlarındaki sunucu yapılandırmalarını değiştirmelerine olanak tanımak istiyorsanız, .htaccess dosyalarının değiştirilmesine izin vermelisiniz. Değişiklik yapmasına izin vereceğiniz kullanıcıların AllowOverride ile yeterli düzeyde hak sahibi olduklarından emin olmalısınız. Daha detaylı bilgi ve nasıl çalıştığı hakkında .htaccess tutorial'a bakın.