Apache HTTP Sunucusu Sürüm 2.2

Apache > HTTP Sunucusu > Belgeleme > Sürüm 2.2 > Modüller

# Apache Modülü mod_userdir

Mevcut Diller: en | ja | ko | tr

Açıklama: | Kullanıcılara özel dizinler
Durum: | Temel
Modül Betimleyici: | userdir_module
Kaynak Dosyası: | mod_userdir.c

### Özet

Bu modül kullanıcılara özel dizinlere `http://mesela.dom/~kullanıcı/` sözdizimi kullanılarak erişilebilmesini mümkün kılar.

### Yönergeler

### Ayrıca bakınız:

- URL’lerin Dosya Sistemi ile Eşleştirilmesi
- public_html eğitmeni

- Yorum

## UserDir Yönergesi

Açıklama: | Kullanıcıya özel dizinlerin yeri
Sözdizimi: | `UserDir dizin [dizin] ...`
Bağlam: | sunucu geneli, sanal konak
Durum: | Temel
Modül: | mod_userdir

`UserDir` yönergesi, bir kullanıcıya ait bir belge için bir istek yapıldığında, isteğin kullanıcının ev dizininde bulunan belli bir dizinden karşılanmasını sağlar. `dizin` olarak şunlar belirtilebilir:

- Dizinin ismi veya aşağıdakiler gibi bir kalıp.
- `disabled` anahtar sözcüğü. `enabled` anahtar sözcüğü ile sonradan etkin kılınmadıkça tüm kullanıcı-dizin dönüşümlerini iptal eder (aşağıya bakınız).
- `disabled` anahtar sözcüğünü takibeden boşluk ayraçlı kullanıcı isimleri listesi. Bu listede yer alan kullanıcı isimlerine, sonradan bir `enabled` listesinde görünse bile, dizin dönüşümleri asla uygulanmaz.
- `enabled` anahtar sözcüğünü takibeden boşluk ayraçlı kullanıcı isimleri listesi. Genel bir iptal sözkonusu olsa bile, kullanıcı ismi bir `disabled` listesinde yer almadıkça, bu listede yer alan dizinlere dönüşüm uygulanır.

`Userdir` yönergesinde ne `enabled` ne de `disabled` varsa, argüman bir dosya ismi kalıbı olarak ele alınır ve kullanıcı belge kök dizininin yolunu oluşturmakta kullanılır. `http://mesela.dom/~ali/bir/iki.html` şöyle dönüştürülür:

Kullanılan UserDir yönergesi | Elde edilen yol
--- | ---
UserDir public_html | ~ali/public_html/bir/iki.html
UserDir /usr/siteler | /usr/siteler/ali/bir/iki.html
UserDir /home/*/htdocs | /home/ali/htdocs/bir/iki.html

Aşağıdaki yönergelerle istemciye gönderilecek yönlendirmeler:

Kullanılan UserDir yönergesi | Elde edilen yönlendirme
--- | ---
UserDir http://mesela.dom/users | http://mesela.dom/users/ali/bir/iki.html
UserDir http://mesela.dom/*/usr | http://mesela.dom/ali/usr/bir/iki.html
UserDir http://mesela.dom/~*/ | http://mesela.dom/~ali/bir/iki.html

Bu yönergeyi kullanırken dikkatli olun; örneğin, `"UserDir ./"` şeklinde bir atama `"/~root"` isteklerini `"/"` dizinine yönlendirir ki bu elbette istenmez. Bu bakımdan yapılandırmanızda mutlaka bir "`UserDir disabled root`" satırının yer almasını tavsiye ederiz. Daha fazla bilgi için `Directory` yönergesine ve Güvenlik İpuçları sayfasına bakınız.

Diğer örnekler:

Bir kaç kullanıcı hariç kalan herkesin `UserDir` dizinlerini iptal etmek için şunu yapabilirsiniz:

`UserDir disabled
UserDir enabled birey1 birey2 birey3`

Bir kaç kullanıcı hariç kalan herkesin `UserDir` dizinlerini etkin kılmak için şunu yapabilirsiniz:

`UserDir disabled birey4 birey5 birey6`

Birden fazla dizin belirtmek de mümkündür:

`Userdir public_html /usr/siteler http://mesela.dom/`

Bu örneğe göre, `http://mesela.dom/~ali/bir/iki.html` şeklinde bir istek alındığında sunucu önce `http://mesela.dom/~ali/bir/iki.html` yönlendirmesini deneyecektir. Onu bulamazsa isteği `/usr/siteler/ali/bir/iki.html` dosyasını arayacak onu da bulamazsa istemciyi `http://mesela.dom/ali/bir/iki.html` adresine yönlendirecektir.

Argüman listesine bir yönlendirme ekleyecekseniz, bu, listenin son elemanı olmalıdır. Apache yönlendirmenin başarılı sonuç verip vermediğini bilemeyecektir. Bu bakımdan, listede bu yönlendirmeden sonra bir yönlendirme daha bulunması daha iyi olacaktır.

Kullanıcı dizini dönüşümü Apache 2.1.4 sürümü ve sonrasında öntanımlı olarak etkin değildir. Daha önceki sürümlerde bir `UserDir` yönergesinin yokluğunda `UserDir public_html` öntanımlıydı.

### Ayrıca bakınız:

- public_html eğitmeni

Mevcut Diller: en | ja | ko | tr

## Yorum

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.