Apache HTTP Sunucusu Sürüm 2.4
Yönergeleri Tanımlamakta Kullanılan Terimler
Bu belgede Apache yapılandırma yönergelerini tanımlamakta kullanılan terimler açıklanmıştır.
Açıklama
Yönergenin kullanım amacının kısa bir açıklaması.
Sözdizimi
Yönergenin bir yapılandırma dosyasında hangi söz dizimiyle görünebileceği belirtilir. Bu sözdizimi yönergeye özeldir ve ayrıntıları yönerge tanımında açıklanır. Genelde yönerge ismini aralarında boşluklar bırakılmış bir dizi argüman izler. Eğer argümanlardan biri kendi içinde boşluk içeriyorsa çift tırnak içine alınır. İsteğe bağlı argümanlar sözdiziminde köşeli ayraçların arasında gösterilmiştir. Birden fazla olası değeri olan argümanlarda değerler aralarına | karakteri konarak ayrılmıştır. Değerin yerine ismi belirtilen argümanlarda bu isimler eğik yazılırken, kendisi değer olan dizgeler öntanımlı yazıtipi ile gösterilmiştir. Değişik sayıda argüman alan yönergelerde bu durum son argümanı takibeden “...” ile belirtilmiştir.
Yönergelerde kullanılan argüman türleri çok çeşitlidir. Çok kullanılanlardan bazıları aşağıda tanımlanmıştır.
- URL
http://host.example.com/yol/yordam/dosya.html
örneğindeki gibi protokol şeması ve konak ismini isteğe bağlı bir dosya yolunun izlediği, açılımı “Uniform Resource Locator” olan ve Türkçe’ye “Tektip Özkaynak Konumlayıcı” şeklinde çevrilebilecek adresleri betimler.- URL-yolu
/yol/yordam/dosya.html
örneğindeki gibi bir url’nin parçası olarak protokol şeması ve konak ismini izleyen bir yol dizgesini betimler. url-yolu, bir dosya sisteminin kök dizinine göre değil,DocumentRoot
ile belirtilen dizine göre bir dosya yolu betimler.- dosya-yolu
/usr/local/apache/htdocs/yol/yordam/dosya.html
örneğindeki gibi yerel dosya sisteminin kök dizini ile başlayan bir dosya yolunu betimler. Aksi belirtilmedikçe, bir / ile başlamayan bir dosya-yoluServerRoot
ile belirtilen dizine göre ele alınır.- dizin-yolu
/usr/local/apache/htdocs/yol/yordam/
örneğindeki gibi kök dizin ile başlayan, yerel dosya sistemindeki bir dizin yolunu betimler.- dosya-ismi
dosya.html
örneğindeki gibi dizin yolu içermeyen bir dosya ismini betimler.- düzifd
- Bir Perl uyumlu düzenli ifade betimler. Yönerge tanımında düzifd ile eşleşenler argüman olarak ele alınır.
- uzantı
- Bu genelde, dosya-ismi’nin bir parçası olarak son noktadan
sonraki kısmı betimler. Bununla birlikte, Apache çok sayıda nokta
içeren dosya isimlerinde ilk noktadan sonrasını uzantı kabul
eden çoklu dosya ismi uzantılarını da tanır. Örneğin, dosya-
ismi olarak
dosya.html.tr
değeri iki uzantı içerir:.html
ve.tr
. Apache yönergelerinde uzantı’ları başında noktası olmaksızın da belirtebilirsiniz. Ayrıca, uzantı’lar harf büyüklüğüne de duyarlı değildir. - MIME-türü
- Dosya biçiminin,
text/html
örneğindeki gibi aralarına bir / konulmuş asıl ve alt biçimler şeklinde açıklandığı yönteme göre belirtileceğini betimler. - ortam-değişkeni
- Apache yapılandırma sürecinde tanımlanmış bir ortam değişkeninin ismini betimler. Daha ayrıntılı bilgi için ortam değişkenleri belgesine bakınız.
Öntanımlı
Eğer yönerge öntanımlı bir değere sahipse o burada belirtilir (öntanımlı değer, yönergede kullanıcı tarafından belirtilmediği halde Apache tarafından belirtildiği varsayılarak işlem yapılan değerdir). Eğer öntanımlı bir değer yoksa bu bölümde bu durum “Yok” şeklinde belirtilir. Burada belirtilen öntanımlı değerin sunucu ile dağıtılan öntanımlı httpd.conf içindeki yönergede kullanılan değerle aynı olmasının gerekmediğine dikkat ediniz.
Bağlam
Yönergenin sunucunun yapılandırma dosyalarının nerelerinde meşru kabul edildiği aşağıdaki değerlerin virgül ayraçlı bir listesi halinde burada belirtilir.
- sunucu geneli
- Yönergenin sunucunun (
httpd.conf
gibi) yapılandırma dosyalarında<VirtualHost>
ve<Directory>
bölümleri dışında her yerde kullanılabileceğini belirtir. Ayrıca,.htaccess
dosyalarında bulunmasına da izin verilmez. - sanal konak
- Yönergenin sunucunun yapılandırma dosyalarının sadece
<VirtualHost>
bölümlerinde kullanıldığında geçerli kabul edileceğini belirtir. - dizin
- Yönergenin sunucunun yapılandırma dosyalarında sadece
<Directory>
,<Location>
,<Files>
,<If>
ve<Proxy>
bölümlerinde kullanıldığında geçerli kabul edileceğini belirtir. Bu bağlama konu sınırlamaların çerçevesi Yapılandırma Bölümleri içinde çizilmiştir. - .htaccess
- Bu bağlamda geçerli olacağı kabul edilen bir yönerge sadece dizin içi
.htaccess
dosyalarında görüldüğü zaman işleme sokulur. Üzerinde bir geçersizleştirme etkin kılınmışsa yönerge her şeye rağmen işleme sokulmayabilir.
Yönergeye sadece tasarlandığı bağlam içinde izin verilir; başka bir yerde kullanmayı denerseniz ya sunucunun bu bağlamı doğru şekilde işlemesine engel olan ya da sunucunun tamamen işlevsiz kalmasına sebep olan -- sunucu hiç başlatılamayabilir -- bir yapılandırma hatası alırsınız.
Yönergenin geçerli olacağı konumlar, aslında, listelenen bağlamların
tamamına mantıksal VEYA uygulanarak bulunur. Başka bir deyişle, bir
yönergenin geçerli olacağı yerler "sunucu geneli, .htaccess
"
şeklinde belirtilmişse yönerge httpd.conf
dosyasında ve
.htaccess
dosyalarında, <Directory>
veya <VirtualHost>
bölümleri haricinde her yerde
kullanılabilir.
Geçersizleştirme
Bir .htaccess
dosyasında göründüğü takdirde yönerge
işlenirken hangi yapılandırma geçersizleşirmesinin etkin olacağı burada
belirtilir. Eğer yönerge bağlamının
.htaccess
dosyalarında görünmesine izin verilmiyorsa hiçbir
bağlam listelenmez.
Geçersizleştirmeler AllowOverride
yönergesi tarafından etkinleştirilir ve belli bir bağlama ve alt
seviyelerde başka AllowOverride
yönergeleri ile değiştirilmedikçe tüm çocuklarına uygulanır. Yönergenin
belgesinde ayrıca kullanılabilecek tüm olası geçersizleştirme isimleri
belirtilir.
Durum
Yönergenin Apache HTTP sunucusuna ne kadar sıkı bağlı olduğunu belirtir. Başka bir deyişle, yönergeye ve işlevselliğine erişim kazanmak için sunucuyu belli bir modül kümesiyle yeniden derlemek gerekip gerekmediği ile ilgili durumu belirtir. Bu özniteliğin olası değerleri şunlardır:
- Çekirdek
- Eğer bir yönerge “Çekirdek” durumuna sahip olarak listelenmişse bu, yönergenin Apache HTTP sunucusunun en iç kısımlarının bir parçası olduğu ve daima kullanılabilir olacağı anlamına gelir.
- MPM
- “MPM” durumuna sahip bir yönerge Çok Süreklilik Modülü tarafından sağlanır. Bu yönerge türü sadece ve sadece yönerge tanımının Modül satırında listelenmiş MPM’lerden birini kullanıyorsanız mevcut olacaktır.
- Temel
- “Temel” durumuna sahip bir yönerge, sunucuda öntanımlı derlenmiş standart Apache modüllerinden biri tarafından destekleniyor demektir. Bu nedenle sunucuyu derlemek için yapılandırırken yönergeyi içeren modülü yapılandırmadan özellikle kaldırmazsanız yönerge normal olarak kullanılabilir olacaktır.
- Eklenti
- “Eklenti” durumuna sahip bir yönerge, Apache sunucu kitinde bulunan ancak normalde sunucuyla birlikte derlenmeyen modüllerden biri tarafından sağlanır. Yönergeyi ve işlevselliğini etkin kılmak için sunucunun derleme öncesi paket yapılandırması sırasında modülün derleneceğini açıkça belirttikten sonra gerekirse sunucuyu yeniden derlemeniz gerekir.
- Deneysel
- “Deneysel” durumuna sahip bir yönerge, Apache sunucu kitinde bulunan modüllerden biri tarafından sağlanır ve modülün denenmesi tamamen sizin insiyatifinize bırakılır. Böyle bir yönerge her şeyiyle belgelenmiştir fakat gerektiği gibi desteklenmemiştir. Yönergeyi içeren modül öntanımlı olarak sunucuyla birlikte derlenebileceği gibi derlenmeyebilir de; bunun için yönergenin açıklandığı sayfanın başına ve kullanılabilirliği hakkında bilgi edinmek için yönergeyi içeren modüle bakın.
Modül
Burada sadece yönergeyi tanımlayan kaynak modülün ismi yazılır.
Uyumluluk
Eğer yönerge Apache’nin 2. sürüm dağıtımının özgün parçası değilse söz konusu sürüm burada belirtilir. Ayrıca, yönergenin kullanımı belli platformlarla sınırlıysa bunun ayrıntıları da burada belirtilir.