From 9b2a06f8f26a827323e60950cf8135b51b8d0cd7 Mon Sep 17 00:00:00 2001
From: Nilgun Belma Buguner
Apache HTTPD sunucusunun belli adresleri ve portları dinlemek üzere yapılandırılması.
@@ -49,7 +48,7 @@ seçilmiÅ bazı adresleri ya da her ikisini de dinlemesi için bunun belirtilmesi gerekebilir. Bu çoÄunlukla, httpdânin farklı IP adreslerine, konak isimlerine ve portlarına nasıl yanıt vereceÄinin - belirlendiÄi sanal konak özelliÄi ile birlikte + belirlendiÄi sanal konak özelliÄi ile birlikte yürür.Listen yönergesi sunucuya
diff --git a/docs/manual/bind.xml.meta b/docs/manual/bind.xml.meta
index bc9555a2390..5a7606ce3f9 100644
--- a/docs/manual/bind.xml.meta
+++ b/docs/manual/bind.xml.meta
@@ -12,6 +12,6 @@
Bu belge mod_cache,
mod_cache_disk, mod_file_cache
@@ -33,50 +32,53 @@
özelliklerinin nasıl kullanılacaÄı açıklanmıÅtır.
GiriÅ
Ãnbelleklemeye Bir BakıÅ
Ãç durumlu RFC2616 HTTP önbelleklemesi
İki durumlu Anahtar/DeÄer PaylaÅımlı Nesne Ãnbellekleme
UzmanlaÅmıŠDosya Ãnbellekleme
Güvenlik Kaygıları
Dosya Tanıtıcı Ãnbelleklemesi
Sistem BelleÄinde Ãnbellekleme
Disk Ãzerinde ÃnbelleklemeApache HTTP sunucusunun 2.2 sürümünden itibaren
- mod_cache ve mod_file_cache modülleri
- deneysel olmaktan çıkarılmıŠve üretim amaçlı kullanılabileceÄine karar
- verilmiÅtir. Bu önbellekleme mimarileri gerek HTTP sunucusu gerekse
- vekili olarak çalıÅmada HTTP iÅlemlerini hızlandırmak anlamında sunucuya
- güç katarlar.
mod_cache, ortam saÄlayıcı modülü olan
- mod_cache_disk ile birlikte HTTP önbelleklemesini
- akıllıca yerine getirir. İçeriÄin kendisi önbellekte saklanırken
- mod_cache içeriÄin önbelleklenebilmesini denetim
- altında tutan HTTP baÅlıkları ve seçenekleri ile ilgilenir. Yerel ve
- vekalet edilen içeriÄin her ikisinin de aynı anda iÅlem görmesi
- saÄlanabilir. mod_cache, vekalet edilen içeriÄe,
- devingen yerel içeriÄe veya zamanla deÄiÅen yerel dosyalara eriÅimi
- hızlandırma ihtiyacına yönelik olarak hem basit hem de karmaÅık
- önbellekleme yapılandırmalarını mümkün kılar.
mod_file_cache ise biraz daha temel ancak bazen daha
- kullanıÅlı olabilen bir önbellekleme Åekli ile ilgilenir. URLâlerin
- önbelleklenebilmesini mümkün kılmanın karmaÅıklıÄıyla boÄuÅmak yerine
- mod_file_cache, dosyaların httpdânin son baÅlatıldıÄı
- zamanki durumlarını saklamak için dosyaların belleÄe eÅlenmek üzere ele
- alınmasını saÄlar. Böylelikle, mod_file_cache, çok sık
- deÄiÅmeyen duraÄan yerel dosyalara eriÅim zamanını azaltmaya yardım
- eder.
CacheFile ve
- MMapFile yönergeleri ile
- ilgili bölümlerde anlatılanları saymazsak
- mod_file_cache, bu belgenin asıl konusu olan
- mod_cache önbellekleme mimarisine göre daha basit bir
- önbellekleme gerçeklenimidir.
Apache HTTP sunucusu, sunucunun baÅarımını çeÅitli yollarla arttırmak + üzere tasarlanmıŠbir dizi önbellekleme özelliÄine sahiptir.
+ +mod_cache ve destek modülü
+ mod_cache_disk akılcı ve HTTP'ye uygun
+ önbellekleme saÄlar. İçeriÄin kendisi önbellekte saklanır ve
+ mod_cache, RFC2616'nın 13. bölümünde açıklandıÄı gibi, içeriÄin
+ önbelleklenebilirliÄini denetleyen çeÅitli HTTP baÅlıklarının ve
+ seçeneklerinin tümünü onurlandırmayı hedefler.
+ Devingen yerel içerik veya vekalet edilen içerik ile ilgilendiÄiniz
+ durumda veya muhtemel bir yavaŠdisk üzerinde yerel dosyalara
+ eriÅimi hızlandırmak ihtiyacında olduÄunuz durumda
+ mod_cache hem basit hem de karmaÅık önbellekleme
+ yapılandırmalarını hedefler.
+ mod_file_cache dosyaların sunucunun baÅlatılması
+ sırasında belleÄe yüklenmesi ile ilgilenir. Böylece dosyalara
+ eriÅim zamanını kısaltabilir, sıkça eriÅilen dosyaların dosya
+ tanıtıcılarını kaydedebilir, her istekte diske gitme ihtiyacını
+ ortadan kaldırır.
+ Bu belgeden azami yararı saÄlayabilmek için temel bir HTTP bilginizin olması ve URLâlerin Dosya Sistemine @@ -85,142 +87,215 @@
| İlgili Modüller | İlgili Yönergeler |
|---|---|
Bir istek sonuçlanıncaya kadar mod_cache modülünde iki
- aÅamadan geçer. İlkinde mod_cache bir URL eÅleme modülü
- olarak çalıÅır ve URL önbellekteyse ve zaman aÅımına uÄramamıÅsa isteÄin
- doÄrudan mod_cache tarafından sunulmasını saÄlar.
Yani isteÄin sunumu sırasında, isteÄin örneÄin,
- mod_proxy veya mod_rewrite tarafından
- ele alınması gerekse bile bu yapılmaz. Ãnbelleklenen içerik ilk alındıÄı
- haliyle sunulur.
EÄer URL önbellekte yoksa, mod_cache isteÄi bir süzgece tabi tutar. httpd içeriÄin varlıÄını
- saptamıÅsa içeriÄin süzgeç tarafından sunulmasını saÄladıktan sonra,
- süzgeç içeriÄin önbelleklenebileceÄini saptamıÅsa gelecekte sunmak üzere
- içeriÄi önbelleÄe kaydeder.
| İlgili Modüller | İlgili Yönergeler |
|---|---|
HTTP protokolü
+ RFC2616'nın 13. bölümünde açıklanan satıriçi önbellekleme
+ mekanizması için yerleÅik bir destek içerir ve bunun getirilerinden
+ yararlanmak için mod_cache modülü kullanılabilir.
İçeriÄin taze olmadıÄı durumda içeriÄin kaybolmasına sebep olan basit + iki durumlu anahtar/deÄer önbelleklemesinin tersine, HTTP önbelleÄi + eskimiÅ içeriÄi tutan ve bu eski içeriÄin deÄiÅip deÄiÅmediÄini özgün + sunucuya soran ve duruma göre onu tekrar taze duruma getiren bir + mekanizma içerir.
+ +HTTP önbelleÄinde bulunan bir girdi Åu üç durumdan birinde olabilir:
+ +İçerik çok eski (tazelik ömründen daha yaÅlı) + ise bayat sayılır. Bir HTTP önbelleÄi böyle bir + içeriÄi istemciye sunmadan önce özgün sunucuya baÄlanıp bayat içeriÄin + hala yeterince taze olup olmadıÄına bakmalıdır. Ãzgün sunucu, içerik + geçersizse yenisini gönderecektir, aksi takdirde, (ideal olanı budur) + içeriÄin hala geçerli olduÄunu belirten bir kod ile yanıt verecektir. + İçerik tekrar taze hale gelince süreç kaldıÄı yerden devam eder.
+ +HTTP protokolü belli koÅullar altında önbelleÄin bayat içeriÄi
+ sunmasına izin vermez. ÃrneÄin, bir içeriÄi özgün sunucuda tazeleme
+ çabasının bir 5xx hatasıyla baÅarısız olması veya baÅka bir tazeleme
+ isteÄinin henüz sonuçlanmamıŠolması bu çeÅit koÅullardandır. Bu
+ durumlarda yanıta bir Warning baÅlıÄı eklenir.
htcacheclean elle veya bir artalan süreci
+ olarak çalıÅtırılabilir. Böylece önbelleÄin boyutunun belirtilen
+ boyutta veya belirtilen dosya düÄümü sayısında kalması saÄlanabilir.
+ Araç içeriÄi silerken bayat içeriÄe öncelik verir.
+ HTTP önbelleklemesinin çalıÅması ile ilgili bütün ayrıntılar + RFC2616'nın 13. bölümünde bulunabilir.
+ +EÄer URL önbellekte bulunmuÅ fakat içeriÄin zaman aÅımına uÄradıÄı
- anlaÅılmıÅsa süzgeç yine de eklenir fakat bu kez
- mod_cache önbellekteki sürümün hala geçerli olup
- olmadıÄını saptamak için kaynaÄın bulunduÄu sunucuya bir koÅullu istek
- gönderir. Ãnbellekteki sürüm hala geçerliyse temel verileri güncellenir
- ve istek önbellekten sunulur. Ãnbellekteki sürüm artık geçerli deÄilse,
- önbellekteki sürüm silinir ve süzgeç güncel içeriÄi önbelleÄe kaydeder
- ve isteÄi oradan sunar.
mod_cache modülü
+ CacheQuickHandler yönergesinin
+ deÄerine baÄlı olarak iki olası yerde sunucuya baÄlanır:
+
Bu aÅama çok erken gerçekleÅen bir aÅama olup isteÄin iÅlenmesi + sırasında isteÄin çözümlenmesinin hemen sonrasıdır. İçerik + önbellekte mevcutsa hemen sunulur ve geri kalan istek iÅleme iÅlemi + iptal edilir.
+ +Bu senaryoda önbellek sunucunun önüne vidalanmıŠgibi + davranır.
+ +Sunucuda gerçekleÅecek bir dizi iÅlemin büyük çoÄunluÄunun + yapılmadan geçilmesi nedeniyle bu en yüksek baÅarımlı kiptir. + Bu kip ayrıca, sunucu iÅlemlerinin kimlik doÄrulama ve yetkilendirme + aÅamalarının da yapılmadan geçilmesini saÄlar. Bu bakımdan bu kip + seçilirken bu durum dikkate alınmalıdır.
+Bu aÅama geç bir aÅama olup, isteÄin tamamen iÅlenmesinin + sonrasıdır.
+ +Bu senaryoda önbellek sunucunun arkasına vidalanmıŠgibi + davranır.
+ +Bu kip en esneÄidir. ÃnbelleÄin, süzme zincirinin hassas olarak + denetlenen bir noktasında oluÅması saÄlanabilir ve önbelleklenen + içerik istemciye gönderilmeden önce süzülüp + kiÅiselleÅtirilebilir.
+URL önbellekte yoksa mod_cache modülü yanıtı
+ önbelleÄe kaydetme aÅamasında süzgeç yıÄıtına bir
+ süzgeç ekler ve geri çekilerek normal istek
+ iÅlemlerinin devam etmesine izin verir. İçeriÄin önbelleklenebilir
+ olduÄu saptanırsa içerik gelecekte sunulmak üzere önbelleÄe
+ kaydedilir, aksi takdirde içerik yok sayılır.
Ãnbellekteki içerik bayatsa, mod_cache modülü
+ isteÄi bir koÅullu istek haline getirir. Ãzgün
+ sunucu normal bir yanıt verirse bu yanıt mevcut içeriÄin yerine
+ önbelleklenir. Ãzgün sunucu bir 304 Not Modified yanıtı
+ verirse içerik tekrar taze olarak imlenir ve önbellekteki içerik
+ süzgeç tarafından kaydedilmeden sunulur.
Yerel içerik önbelleklendiÄi takdirde UseCanonicalName yönergesine On
+
Bir sanal konak birçok farklı sunucu takma adından biri olarak
+ bilindiÄi takdirde UseCanonicalName yönergesine On
deÄeri atanmıÅsa önbellekten sunulan sayfa sayısında büyük bir artıÅ
- olduduÄu görülür. Bunun sebebi içeriÄi sunan sanal konaÄın isminin
- önbellek anahtarının bir parçası olarak kullanılmasıdır. Yönergeye
+ olduÄu görülür. Bunun sebebi içeriÄi sunan sanal konaÄın isminin
+ önbellek anahtarının içinde kullanılmasıdır. Yönergeye
On deÄerini atamak suretiyle çok isimli ve rumuzlu sanal
konaklar için farklı önbellek girdileri oluÅturulmaz, bunun yerine her
meÅru sanal konak için ayrı bir önbellek tutulur.
Ãnbellekleme, URLânin dosya ismine dönüÅtürülmesi aÅamasında - gerçekleÅtiÄinden önbelleklenen belgeler sadece URL isteklerine bir - yanıt olarak sunulurlar. Sunucu Taraflı - İçerikleri kullanmazsanız genellikle bunun fazla bir önemi - olmaz.
- -
- <!-- Bu içerik önbelleklenebilir. -->
- <!--#include virtual="/dipnot.html" -->
-
- <!-- Bu içerik önbelleklenemez. -->
- <!--#include file="/bir/yol/dipnot.html" -->
-
Sunucu Taraflı İçerikleri kullanıyorsanız ve önbelleklemenin
- saÄladıÄı hız artıÅından da yaralanmak istiyorsanız içerik
- yerleÅtirmek için virtual içerik türünü kullanınız.
Ãnbellekli öÄeler için öntanımlı zaman aÅımı süresi bir saat olmakla
- birlikte CacheDefaultExpire
- yönergesi kullanılarak bu deÄer kolaylıkla geçersiz kılınabilir. Bu
- öntanımlı deÄer sadece içeriÄin özgün kaynaÄı bir zaman aÅımı süresi
- veya son deÄiÅiklik tarihi belirtmediÄi takdirde kullanılır.
Ãnbelleklenmek üzere tasarlanmıŠiyi biçimli bir içerik tazelik ömrünü
+ Cache-Control baÅlıÄının max-age veya
+ s-maxage alanlarıyla ya da bir Expires
+ baÅlıÄını içererek bildirmelidir.
Aynı zamanda, özgün sunucunun tanımladıÄı tazelik ömrü, bir istemci
+ tarafından istekte bir Cache-Control baÅlıÄı kullanılarak
+ geçersiz kılınmak istenebilir. Bu durumda hangi tazelik ömrü daha
+ kısaysa o geçerli olur.
Tazelik ömrü istekte veya yanıtta mevcut deÄilse öntanımlı bir tazelik
+ ömrü kullanılır. Ãntanımlı tazelik ömrü önbellekli içerik için bir saat
+ olmakla birlikte CacheDefaultExpire yönergesi
+ kullanılarak kolayca deÄiÅtirilebilir.
Bir yanıt Expires baÅlıÄını deÄil de
Last-Modified baÅlıÄını içeriyorsa
- mod_cache zaman aÅımı süresini CacheLastModifiedFactor yönergesinin
- nasıl kullanıldıÄına bakarak saptar.
mod_cache tazelik ömrünü CacheLastModifiedFactor yönergesine
+ bakarak saptar.
- Yerel içerik için, zaman aÅımı süresini hassas olarak ayarlamak
- gerekirse mod_expires kullanılabilir.
Yerel içerik için, ya da kendi Expires baÅlıÄını
+ tanımlamayan uzak içerik için tazelik ömrünü max-age ve
+ Expires ekleyerek hassas olarak ayarlamak
+ için mod_expires kullanılabilir.
Zaman aÅımı süresinin üst sınırı CacheMaxExpire yönergesi ile
+
Tazelik ömrünün üst sınırı CacheMaxExpire yönergesi ile
belirlenebilir.
Ãnbellekteki içerik zaman aÅımına uÄrayıp, içerik saÄlayıcıya veya - arka sunucuya özgün isteÄi aktarmak yerine ayrı bir istek yapılması - gereÄi httpdânin Åartlı bir istek yapması sonucunu doÄurur.
- -Bir istemcinin veya önbelleÄin aynı içeriÄin farklı sürümleri - arasında ayrım yapabilmesi için HTTP protokolü bazı baÅlık alanları - önerir. ÃrneÄin, "Etag:" baÅlıÄıyla sunulan bir özkaynak için - "If-None-Match:" baÅlıÄıyla bir Åartlı istek yapmak mümkün olduÄu gibi - özkaynak "Last-Modified:" baÅlıÄıyla sunuluyorsa Åartlı istek - "If-Modified-Since:" baÅlıÄıyla yapılabilir, vesaire.
- -Böyle bir Åartlı istek yapıldıÄında yanıt koÅulun içerikle eÅleÅip - eÅleÅmediÄine baÄlı olarak farklı olur. EÄer istek bir - "If-Modified-Since:" baÅlıÄıyla yapılmıÅsa ve içerik istekte - belirtilen zamandan önce deÄiÅtirilmemiÅse kısa ve öz olarak bir "304 - Not Modified" (Bir deÄiÅiklik yok) iletisiyle yanıt verilir.
- -Aksi takdirde bir Åartlı istek yapılmamıŠgibi içeriÄin kendisi +
Ãnbellekteki içeriÄin zaman aÅımına uÄrayıp bayat hale gelmesi, + httpdânin özgün isteÄi aktarmak yerine isteÄi deÄiÅikliÄe uÄratarak + Åartlı bir istek yapması sonucunu doÄurur.
+ +Ãzgün önbellekli yanıtta bir ETag baÅlıÄı mevcutsa,
+ mod_cache modülü özgün sunucuya yapılan isteÄe
+ bir If-None-Match baÅlıÄı ekler.
+ Ãzgün önbellekli yanıtta bir Last-Modified baÅlıÄı
+ mevcutsa, mod_cache modülü özgün sunucuya yapılan
+ isteÄe bir If-Modified-Since baÅlıÄı ekler. Bunlardan
+ birinin varlıÄı isteÄi koÅullu yapar.
Bir koÅullu istek özgün sunucu tarafından alındıÄında, özgün sunucu
+ ETag veya Last-Modified baÅlıÄının isteÄe
+ uygun olarak deÄiÅip deÄiÅmediÄine bakmalıdır. DeÄiÅmemiÅse, özgün
+ sunucu kısa ve öz bir "304 Not Modified" yanıtı ile yanıt vermelidir.
+ Bunun önbellekteki anlamı Åudur: EskimiÅ içerik hala tazedir ve içerik
+ yeni tazelik ömrüne ulaÅıncaya kadar sonraki isteklerde
+ kullanılmalıdır.
İçerik deÄiÅmiÅse, bir Åartlı istek yapılmamıŠgibi içeriÄin kendisi sunulur.
-Ãnbellekleme ile ilgili Åartlı istekler çifte yarar saÄlar. Birinci - olarak, böyle bir istek arkadaki sunucuya yapılıyorsa ve iki içerik de - aynıysa bunu saptamak kolay olur ve özkaynaÄın tamamını aktarma - külfetinden kurtulunur.
+Åartlı istekler çifte yarar saÄlar. Birinci olarak, böyle bir istek + özgün sunucuya yapılıyorsa ve iki içerik de aynıysa bunu saptamak kolay + olur ve özkaynaÄın tamamını aktarma külfetinden kurtulunur.
-İkinci olarak, Åartlı istekler arka sunucuda normalden daha az - faaliyete sebep olur. DuraÄan dosyalar için bu genellikle +
İkinci olarak, iyi tasarlanmıŠbir özgün sunucu, koÅullu istekler tam
+ bir yanıt üretmekten önemli ölçüde ucuz olacak Åekilde tasarlanmıÅ
+ olacaktır. DuraÄan dosyalar için bu genellikle
stat() veya benzeri bir sistem çaÄrısıyla dosya
boyutları ve deÄiÅiklik zamanına bakmak Åeklinde gerçekleÅir.
- Böylelikle httpd yerel içeriÄi önbellekliyor olsa bile ve hatta
- içerik zaman aÅımına da uÄrasa önbellekteki dosyada bir deÄiÅiklik
- olmadıÄı takdirde içeriÄi önbellekten sunmak daha hızlı olacaktır.
- Ãünkü dosyayı önbellekten okumak, arka sunucudan okumaktan daha
- hızlıdır (bu, bellekten okumayla diskten okumayı karÅılaÅtırmak
- gibidir).
Ãzgün sunucular koÅullu istekleri desteklemek için her türlü çabayı + göstermelidir. Ancak, koÅullu istekler desteklenmiyorsa, özgün sunucu + istek koÅullu deÄilmiÅ gibi yanıt vermeli, önbellek ise, içerik + deÄiÅmiÅ ve yani içerik önbelleÄe kaydedilmiÅ gibi yanıt vermelidir. Bu + durumda, önbellek basit bir iki durumlu (içerik ya tazedir ya da + silinmiÅ) önbellek gibi davranacaktır.
Evvelce bahsedildiÄi gibi httpdâde iki tür önbellekleme yapılır ve
- bunlar farklı yöntemlerle çalıÅır. mod_file_cache
- önbelleklemesinde dosyalar httpd baÅlatıldıÄı zamanki içerikle
- saklanır. Bu modül tarafından önbelleÄe alınmıŠbir dosya için istek
- geldiÄinde isteÄin yolu kesilip önbellekteki dosya sunulur.
mod_cache önbelleklemesinde iÅler biraz daha
- karıÅıktır. Bir isteÄe hizmet sunulurken istenen içerik evvelce
- önbelleklenmemiÅse önbellekleme modülü önce içeriÄin
- önbelleklenebilirliÄine bakar. Bir yanıtın önbelleklenebilirliÄini
- belirleyen koÅullar Åunlardır:
HTTP önbelleÄin tarafından önbelleklenebilecek içerik + + RFC2616 Section 13.4 Response Cacheability belgesinde tanımlanmıŠ+ olup, bunlar Åöyle özetlenebilir:
CacheEnable ve CacheDisable yönergelerine bakınız.CacheIgnoreNoLastMod
yönergesinin kullanımını gerektiren bir durum olmadıkça 200 durum
koduna sahip bir yanıtın "Etag", "Last-Modified" ve "Expires"
- baÅlıklarından birini veya "Cache-Control:" baÅlıÄının max-age veya
- max-age yönergelerinden birini (en azından) içermesi gerekir.CacheStorePrivate
yönergesinin kullanımını gerektiren bir durum olmadıkça yanıt
@@ -265,26 +338,35 @@
Kısaca, istek zamana aÅırı baÄımlıysa ya da istek kısmen bile olsa - HTTP uzlaÅımıyla baÄdaÅmıyorsa önbelleÄe alınmamalıdır.
+İçerik zamana baÄımlıysa ya da istek kısmen bile olsa HTTP uzlaÅımıyla
+ baÄdaÅmıyorsa önbelleÄe alınmamalıdır. Bu içerik önbelleklenemeyeceÄini
+ Cache-Control baÅlıÄını kullanarak sunucuya
+ bildirmelidir.
İçeriÄi istekçinin IP adresine baÄlı olarak deÄiÅen veya her beÅ - dakikada bir deÄiÅikliÄe uÄrayan bir devingen içeriÄe sahipseniz böyle - bir içerik asla önbelleÄe alınmamalıdır.
+İçerik sıkça deÄiÅiyorsa, tazelik ömrü dakikalar veya saniyelerle + ifade ediliyorsa, içerik yine de önbelleklenebilir. Ancak, tam + yanıtların düzenli olarak üretilmemesinin temini için özgün sunucunun + koÅullu istekleri doÄru olarak desteklemesi + saÄlanmalıdır.
-DiÄer taraftan, içerik HTTP baÅlıÄındaki deÄerlere baÄlı olarak - deÄiÅiyorsa içeriÄin bir "Vary" baÅlıÄı kullanılarak akıllıca - önbelleklenmesi imkanı mevcuttur.
+İstemcinin saÄladıÄı istek baÅlıklarına dayanarak deÄiÅen içerik,
+ Vary yanıt baÅlıÄının akıllıca kullanımıyla
+ önbelleklenebilir.
"Vary" baÅlıklı bir yanıt arka sunucudan istenirken
- mod_cache tarafından alınmıÅsa akıllıca ele alınmaya
- çalıÅılacaktır. Mümkünse, mod_cache gelecekte bu
- içerikle ilgili isteklerin "Vary" baÅlıklı yanıtları olacaÄını
- saptayacak ve önbellekten doÄru içerikle yanıt verecektir.
Ãzgün sunucu, istekteki baÅlık deÄerlerine dayanarak farklı + içeriklerle yanıt vermeye ayarlandıÄı takdirde, örneÄin aynı URL'de + farklı dillerde içerik sunmak gibi, HTTP'nin önbellekleme mekanizması + aynı URL'de aynı sayfanın deÄiÅik sürümlerini önbelleklemeyi mümkün + kılar.
+ +Bu özgün sunucu tarafından bir Vary baÅlıÄı eklenerek
+ yapılır. Bir sayfanın farklı sürümleri arasındaki farkları saptarken
+ önbellek tarafından hangi baÅlıkların hesaba katılacaÄını
+ Vary baÅlıÄı belirler.
ÃrneÄin, bir yanıt Åöyle bir baÅlık ile alınmıÅsa,
@@ -294,262 +376,44 @@mod_cache sadece accept-language ve accept-charset
baÅlıkları özgün istekle eÅleÅen önbellekli içeriÄi sunacaktır.
İçeriÄin farklı sürümleri yan yana önbelleklenebilir.
+ mod_cache modülü Vary baÅlıÄını
+ kullanarak baÅlıkta listelenmiÅ istek baÅlıklarının uygun deÄerlerini
+ saptar ve istemciye hangi sürümle yanıt verileceÄine karar verir.
mod_cache çoÄunlukla bir karÅı vekile sahip olmak
- amacıyla kullanılır. Arka sunucunun sorgulanmasını gerektirmeyen tüm
- istekler önbellekleme modülü tarafından karÅılanacaktır. Yerel
- özkaynakların önbelleklenmesi söz konusu olduÄunda httpdânin güvenlik
- modeli büyükçe bir deÄiÅikliÄe uÄrar.
mod_cache modülü önbelleÄi yönetmek için çeÅitli
+ depolama ortamlarına özgü gerçeklenimleri kullanır. Diske önbellekleme
+ desteÄini mod_cache_disk saÄlar.
Olası .htaccess dosyalarının dosya sisteminin tamamında
- taranması çok pahalı bir iÅlem olduÄundan mod_cache,
- (iÅlemi hızlandırmak için) önbelleÄe almanın temel amacını kısmen
- gözardı ederek, önbellekteki içeriÄin sunumu için gerekli
- yetkilendirmenin olup olmadıÄı konusunda bir karar üretmez. BaÅka bir
- deyiÅle, eÄer mod_cache bir kısım içeriÄi önbelleÄe
- almıÅsa içerik zaman aÅımına uÄramadıÄı sürece bu içerik önbellekten
- sunulacaktır.
ÃrneÄin, yapılandırmanız bir özkaynaÄa IP adresine göre eriÅime izin
- veriyorsa bu içeriÄin önbelleÄe alınmayacaÄından emin olmalısınız.
- Bunu CacheDisable
- yönergesini veya mod_expires kullanarak
- yapabilirsiniz. Bunu yapmaz, olayı kendi haline bırakırsanız
- mod_cache bir karÅı vekil gibi çalıÅarak sunulan her
- içeriÄi arabelleÄe alacak ve hangi IP adresinden gelirse gelsin her
- istemciye bunu sunacaktır.
Son kullanıcılarıın isteklerine önbellekten hizmet sunulduÄundan - önbelleÄin kendisi içerikle etkileÅime geçmek isteyenlerin veya - içeriÄi tahrif etmek isteyenlerin hedefi haline gelebilir. httpdâyi - çalıÅtıran kullanıcı tarafından her zaman önbelleÄe yazılabileceÄini - akıldan çıkarmamak önemlidir. Bu durumda alıÅılmıÅın tersine tüm - içeriÄin Apache kullanıcısı tarafından yazılamamasının saÄlanması - önerilir.
- -EÄer Apache kullanıcısı, örneÄin bir CGI sürecindeki açık nedeniyle
- tehlikeye atılırsa, önbellek hedef alınabilir.
- mod_cache_disk kullanılırken önbellekteki bir öÄeyi
- deÄiÅtirmek veya önbelleÄe yeni bir öÄe eklemek görece daha
- kolaydır.
Bu risk, Apache kullanıcısını kullanan diÄer saldırı türleriyle
- karÅılaÅtırıldıÄında daha yüksektir. mod_cache_disk
- kullanıyorsanız Åunları aklınızdan çıkarmayın: (1) httpd güvenlik
- güncellemelerini takip edin ve sunucunuzu buna göre güncelleyin. (2)
- Mümkünse suEXEC kullanarak CGI süreçlerini
- Apache kullanıcısı olmayan bir kullanıcının aidiyetinde çalıÅtırın.
httpd bir önbellekli vekil sunucu olarak çalıÅtıÄında önbellek - zehirlenmesi adı verilen sorunla karÅılaÅılma olasılıÄı vardır. - Ãnbellek zehirlenmesi, vekil sunucunun arka sunucudan yanlıŠ(ve - genellikle istenmeyen) içerik almasına sebep olan bir saldırı türünü - betimlemek için yaygın olarak kullanılan bir terimdir.
- -ÃrneÄin httpdânin çalıÅtıÄı sistemin kullandıÄı DNS sunucuları DNS - önbellek zehirlenmesinden etkilenebilecek durumdaysa, bir saldırgan - httpdânin istekleri almak için baÅvuracaÄı kaynak sunucunun yerini - deÄiÅtirebilir. DiÄer bir örnek, HTTP istek kaçakçılıÄı adı verilen - bir saldırı türüdür.
- -Bu belge HTTP istek kaçakçılıÄını derinliÄine incelenmesi için uygun - yer deÄildir (böyle kaynaklara arama motorunuzla eriÅebilirsiniz). - Bununla birlikte, vekil tarafından kaynak sunucudan alınan içeriÄi - tamamen denetim altına almak amacıyla kaynak sunucudaki bir açıÄı - istismar etmeye yönelik bir dizi istek yapılabileceÄinin olasılık - dahilinde olduÄunu bilmenizde yarar vardır.
- -| İlgili Modüller | İlgili Yönergeler |
|---|---|
Bir dosyanın açılması iÅlemi, özellikle de aÄ dosya sistemlerinde - bulunan dosyalar için önemli bir gecikme kaynaÄı olabilir. Ãnbellekte, - çok sunulan dosyaların kendilerinin deÄil, açık dosya tanıtıcılarının - saklanması httpdâyi bu tür gecikmelerden koruyabilir. httpdâde tek türde - dosya tanıtıcı önbelleklemesi yapılabilmektedir.
- -CacheFile yönergesi ilehttpdâde mevcut önbelleklemenin en temel Åekli
- mod_file_cache tarafından saÄlanan dosya tanıtıcı
- önbelleklemesidir. Bu önbellek türü dosyaların kendilerini deÄil açık
- dosya tanıtıcılarının bir listesini saklar. Dosyaların bu anlamda
- önbelleklenmesi, CacheFile yönergesi yapılandırma dosyasında belirtilerek
- saÄlanabilir.
CacheFile yönergesi
- belirtilen dosyanın httpd baÅlatıldıÄında açılmasını ve dosya için
- yapılan sonraki her istekte bu dosya tanıtıcısının kullanılmasını
- saÄlar.
- CacheFile /usr/local/apache2/htdocs/index.html
-
Büyük miktarda dosyayı bu anlamda önbelleklemeyi tasarlıyorsanız - iÅletim sisteminizin açık dosya tanıtıcılarının sayısı ile ilgili - sınırlamasını uygun bir deÄere ayarlamanız gerekebilir.
- -CacheFile yönergesini
- kullandıÄınız takdirde dosya içeriÄindeki deÄiÅiklikleri anında isteÄe
- yansıtamazsınız. httpd dosyayı ilk baÅlatıldıÄındaki haliyle
- sunar.
EÄer httpd çalıÅırken dosya silinmiÅse httpd ilk baÅlatıldıÄındaki - haline iliÅkin dosya tanıtıcıyı saÄlamaya ve dolayısıyla dosya - içeriÄini sunmaya devam edecektir. Yani, dosya silinmiÅ ve artık dosya - sisteminde görünmüyor olsa bile httpd durdurulup dosya tanıtıcıları - kapanmadıkça dosyaların silinmesiyle açılan yer serbest - kalmayacaktır.
- -| İlgili Modüller | İlgili Yönergeler |
|---|---|
İçeriÄin sistem belleÄinden sunulması içerik sunmanın evrensel olarak - en hızlı yoludur. Dosyaların bir disk denetleyiciden okunması ya da daha - kötüsü uzak bir aÄdan okunması bellekten okumayla karÅılaÅtırılamayacak - ölçüde yavaÅ iÅlemlerdir. Disk denetleyiciler genellikle fiziksel - süreçleri denetlerler. AÄ eriÅimi ise band geniÅliÄi sınırlamalarından - etkilenir. Halbuki bellek eriÅimi sadece nano saniyeler mertebesinde - gerçekleÅir.
- -Sistem belleÄi en pahalı saklama ortamı olması sebebiyle en verimli - Åekilde kullanımı önemlidir. Dosyaları sistem belleÄinde saklamakla - sistemin kullanabileceÄi bellek miktarını azaltmıŠolursunuz. İÅletim - sistemi önbelleklemesinde göreceÄiniz gibi bu öyle basit bir konu - deÄildir. httpdânin kendi kullandıÄı belleÄin bir kısmını önbellek - olarak ayırırken çok fazla bellek kullanmamak önemlidir. Aksi takdirde - iÅletim sistemi belleÄin yetmediÄi noktada belleÄi diske - takaslayacaÄından istenen baÅarım artıÅı saÄlanamayacaktır.
- -Günümüz iÅtetim sistemlerinin hemen hemen tamamında bellek içi - dosya/veri saklama iÅlemlerini çekirdek yönetir. Bu güçlü bir - özelliktir ve iÅletim sistemlerinin büyük çoÄunluÄu bunu böyle yapar. - ÃrneÄin, Linuxâta bir dosyanın ilk defa okunduÄunda ve ikinci kez - okunduÄunda iÅlemcinin ne kadar meÅgul edildiÄine bakalım:
+Tipik olarak modül Åöyle yapılandırılır:
- colm@coroebus:~$ time cat testfile > /dev/null
- real 0m0.065s
- user 0m0.000s
- sys 0m0.001s
- colm@coroebus:~$ time cat testfile > /dev/null
- real 0m0.003s
- user 0m0.003s
- sys 0m0.000s
+CacheRoot /var/cache/apache/
+CacheEnable disk /
+CacheDirLevels 2
+CacheDirLength 1
Küçük bir dosya için bile okuma süresi bakımından büyük fark ortaya - çıkmaktadır. Bunun sebebi çekirdeÄin dosya içeriÄini bellek daha - güncel amaçlar için lazım olana dek bellek içinde saklamasıdır.
- -Sisteminizde yeterince yedek bellek olduÄundan eminseniz, bu - önbellekte daha fazla dosya saklanacaÄından emin olabilirsiniz. - Bundan, önbelleÄin sistem belleÄinde verimli biçimde tutulması için - httpdâde ek bir yapılandırmaya gidilmesinin gerekmediÄi sonucu - çıkarılabilir.
- -Bundan baÅka, iÅletim sistemi dosyaların deÄiÅtiÄi ve silindiÄi - zamanları bildiÄinden bu tür dosyaların içerikleri gerektiÄinde - önbellekten kendiliÄinden silinmiÅ olur. Bellek içinde dosya saklarken - dosyaların deÄiÅtirilme zamanlarını bilme olanaÄı olmadıÄından bu - durum httpdâye büyük yarar saÄlar.
- - -İÅletim sisteminin dosyaların önbelleklenmesi için saÄladıÄı bunca - yarara ve baÅarım artıÅına karÅın bellek içinde dosya önbelleklemenin - httpd tarafından yerine getirilmesinin daha iyi olacaÄı bazı durumlar - vardır.
- -MMapFile yönergesi ilemod_file_cache modülü, bir duraÄan dosyanın
- içeriÄini sunucunun baÅlatılması sırasında (mmap sistem çaÄrısıyla)
- belleÄe eÅlenmesini mümkün kılmak için MMapFile yönergesini saÄlar.
- httpd bu dosyaya gelecek sonraki istekler için dosyanın bellekiçi
- içeriÄini kullanacaktır.
- MMapFile /usr/local/apache2/htdocs/index.html
-
CacheFile yönergesinde
- olduÄu gibi bu dosyalarda httpd baÅlatıldıktan sonra yapılacak bir
- deÄiÅiklikten httpdânin haberi olmayacaktır.
MMapFile yönergesi
- ayırdıÄı belleÄin toplam miktarı ile ilgilenmez, dolayısıyla
- yönergenin aÅırı kullanımından kaçınmalısınız. httpdânin çocuk
- süreçlerinin her biri bu belleÄin kendilerine ait birer kopyasını
- yapacaÄından belleÄe eÅlenen dosyaların çok yer kaplamaması büyük önem
- taÅımaktadır; aksi takdirde iÅletim sistemi belleÄi diske
- takaslayacaÄından beklenen fayda saÄlanamayacaktır.
En önemlisi önbelleklenen dosyaların yerel olarak saklanması olup + iÅletim sisteminin saÄladıÄı bellekiçi önbelleklemeden de ayrıca + faydalanılmıŠolur. Bu bakımdan, dosyalar disk üzerinde saklansa bile + sıkça eriÅilen dosyalar iÅletim sistemi sayesinde aslında bellekten + sunulmuÅ olacaklardır.
-| İlgili Modüller | İlgili Yönergeler |
|---|---|
mod_cache_disk modülü önbelleklemenin
- mod_cache için disk üzerinde yapılmasını mümkün
- kılar. Bbu önbellekleme akıllıca yapılır ve önbellekteki içerik
- sadece geçerli kabul edildiÄi sürece sunulabilir.
Modül bu amaçla genelde Åöyle kullanılır:
- -
- CacheRoot /var/cache/apache/
- CacheEnable disk /
- CacheDirLevels 2
- CacheDirLength 1
-
En önemlisi önbelleklenen dosyaların yerel olarak saklanması olup - iÅletim sisteminin saÄladıÄı bellekiçi önbelleklemeden de ayrıca - faydalanılmıŠolur. Bu bakımdan, dosyalar disk üzerinde saklansa bile - sıkça eriÅilen dosyalar iÅletim sistemi sayesinde aslında bellekten - sunulmuÅ olacaklardır.
-mod_cache_disk öÄeleri önbellekte saklamak için
istek yapılan URLânin 22 karakterlik özetini oluÅturur. Bu özet, çok
sayıda URLânin aynı özeti oluÅturmaması için konak ismi, protokol,
- port ve varsa CGI argümanlarından oluÅur.
Vary baÅlıÄında
+ tanımlı elemanlardan oluÅur.
Ãzeti oluÅturan karakterler 64 karakterlik bir karakter kümesinden seçildiÄinden oluÅturulması olası farklı özet sayısı 64^22âdir. @@ -560,7 +424,8 @@ deÄerlerine göre önce dizinlere ayrılır.
CacheDirLevels
- yönergesi kaç alt seviye dizin olacaÄını belirler. ÃrneÄin, yukarıdaki
+ yönergesi kaç alt seviye dizin olacaÄını ve CacheDirLength her dizinde kaç
+ karakter olacaÄını belirler. ÃrneÄin, yukarıdaki
özete sahip bir dosyanın isminin baÅına yukarıdaki yapılandırma
örneÄine uygun olarak
/var/cache/apache/x/y/TGxSMO2b68mBCykqkp1w gibi bir önek
@@ -615,17 +480,326 @@
htcachecleanâin çalıÅtırılma aralıÄını iyi
belirlemek gerekir.
Ayrıca, htcacheclean için uygun bir "nice" seviyesi
+ seçilmesi önerilr. Böylece, sunucu çalıÅırken aracın ölçüsüz disk g/ç
+ yapmasına sebebiyet verilmemiŠolur.

Åekil 1:
ÃnbelleÄin büyümesi ve düzenli aralıklarla temizlenmesi.
mod_cache_disk ne kadar önbellek alanı kullandıÄı
- ile ilgili bir bilgi vermediÄinden htcachecleanâin
- bir temizlik sonrası yeterince büyük bir geniÅleme alanı kalacak
- Åekilde yapılandırılması önemlidir.
mod_cache_disk ne kadar bellek kullanıldıÄı hakkında
+ bilgi vermediÄinden, htcacheclean'in bir temizliÄin
+ ardından yeterli bir büyüme alanı kalacak Åekilde yapılandırılması
+ temin edilmelidir.
| İlgili Modüller | İlgili Yönergeler |
|---|---|
Apache HTTP sunucusu, SSL oturumları, kimlik doÄrulama bilgileri gibi + önbelleklenebilen özel bilgiler için socache + arayüzü içinde düÅük seviyeli bir paylaÅımlı nesne önbelleÄine + sahiptir.
+ +Her gerçeklenime uygun ek modüller de saÄlanmıÅtır:
+ +mod_socache_dbmmod_socache_dcmod_socache_memcachemod_socache_shmcb| İlgili Modüller | İlgili Yönergeler |
|---|---|
mod_authn_socache modülü kimlik doÄrulama araçlarının
+ yükünün hafifletilmesini, kimlik doÄrulama sonucunun önbelleklenmesini
+ saÄlar.
| İlgili Modüller | İlgili Yönergeler |
|---|---|
mod_ssl modülü, oturum önbelleÄi ve önbellek
+ zımbalaması saÄlamak için socache arayüzünü kullanır.
| İlgili Modüller | İlgili Yönergeler |
|---|---|
Dosya sisteminin yavaÅ olabildiÄi veya dosya tanıtıcılarının + kullanımının pahalıya mal olduÄu sistemlerde, sunucunun baÅlatılması + sırasında dosyaların belleÄe yüklenmesi seçeneÄi vardır.
+ +Dosyaların açılmasının yavaÅ olduÄu sistemlerde, dosyaların sunucunun + baÅlatılması sırasında açılması ve dosya tanıtıcısını önbelleklenmesi + seçeneÄi vardır. Bu seçeneklerin duruk dosyalara eriÅimin yavaÅ olduÄu + sistemlere de bir yardımı olabilir.
+ +Bir dosyanın açılması iÅlemi, özellikle de aÄ dosya sistemlerinde + bulunan dosyalar için önemli bir gecikme kaynaÄı olabilir. Ãnbellekte, + çok sunulan dosyaların kendilerinin deÄil, açık dosya tanıtıcılarının + saklanması httpdâyi bu tür gecikmelerden koruyabilir. httpdâde tek + türde dosya tanıtıcı önbelleklemesi yapılabilmektedir.
+ +CacheFile yönergesi ilehttpdâde mevcut önbelleklemenin en temel Åekli
+ mod_file_cache tarafından saÄlanan dosya tanıtıcı
+ önbelleklemesidir. Bu önbellek türü dosyaların kendilerini deÄil açık
+ dosya tanıtıcılarının bir listesini saklar. Dosyaların bu anlamda
+ önbelleklenmesi, CacheFile yönergesi yapılandırma dosyasında belirtilerek
+ saÄlanabilir.
CacheFile yönergesi
+ belirtilen dosyanın httpd baÅlatıldıÄında açılmasını ve dosya için
+ yapılan sonraki her istekte bu dosya tanıtıcısının kullanılmasını
+ saÄlar.
+ CacheFile /usr/local/apache2/htdocs/index.html
+
Büyük miktarda dosyayı bu anlamda önbelleklemeyi tasarlıyorsanız + iÅletim sisteminizin açık dosya tanıtıcılarının sayısı ile ilgili + sınırlamasını uygun bir deÄere ayarlamanız gerekebilir.
+ +CacheFile yönergesini
+ kullandıÄınız takdirde dosya içeriÄindeki deÄiÅiklikleri anında
+ isteÄe yansıtamazsınız. httpd dosyayı ilk baÅlatıldıÄındaki haliyle
+ sunar.
EÄer httpd çalıÅırken dosya silinmiÅse httpd ilk baÅlatıldıÄındaki + haline iliÅkin dosya tanıtıcıyı saÄlamaya ve dolayısıyla dosya + içeriÄini sunmaya devam edecektir. Yani, dosya silinmiÅ ve artık + dosya sisteminde görünmüyor olsa bile httpd durdurulup dosya + tanıtıcıları kapanmadıkça dosyaların silinmesiyle açılan yer serbest + kalmayacaktır.
+ + + + +İçeriÄin sistem belleÄinden sunulması içerik sunmanın evrensel olarak + en hızlı yoludur. Dosyaların bir disk denetleyiciden okunması ya da daha + kötüsü uzak bir aÄdan okunması bellekten okumayla karÅılaÅtırılamayacak + ölçüde yavaÅ iÅlemlerdir. Disk denetleyiciler genellikle fiziksel + süreçleri denetlerler. AÄ eriÅimi ise band geniÅliÄi sınırlamalarından + etkilenir. Halbuki bellek eriÅimi sadece nano saniyeler mertebesinde + gerçekleÅir.
+ +Sistem belleÄi en pahalı saklama ortamı olması sebebiyle en verimli + Åekilde kullanımı önemlidir. Dosyaları sistem belleÄinde saklamakla + sistemin kullanabileceÄi bellek miktarını azaltmıŠolursunuz. İÅletim + sistemi önbelleklemesinde göreceÄiniz gibi bu öyle basit bir konu + deÄildir. httpdânin kendi kullandıÄı belleÄin bir kısmını önbellek + olarak ayırırken çok fazla bellek kullanmamak önemlidir. Aksi takdirde + iÅletim sistemi belleÄin yetmediÄi noktada belleÄi diske + takaslayacaÄından istenen baÅarım artıÅı saÄlanamayacaktır.
+ +Günümüz iÅtetim sistemlerinin hemen hemen tamamında bellek içi + dosya/veri saklama iÅlemlerini çekirdek yönetir. Bu güçlü bir + özelliktir ve iÅletim sistemlerinin büyük çoÄunluÄu bunu böyle yapar. + ÃrneÄin, Linuxâta bir dosyanın ilk defa okunduÄunda ve ikinci kez + okunduÄunda iÅlemcinin ne kadar meÅgul edildiÄine bakalım:
+ +
+ colm@coroebus:~$ time cat testfile > /dev/null
+ real 0m0.065s
+ user 0m0.000s
+ sys 0m0.001s
+ colm@coroebus:~$ time cat testfile > /dev/null
+ real 0m0.003s
+ user 0m0.003s
+ sys 0m0.000s
+
Küçük bir dosya için bile okuma süresi bakımından büyük fark ortaya + çıkmaktadır. Bunun sebebi çekirdeÄin dosya içeriÄini bellek daha + güncel amaçlar için lazım olana dek bellek içinde saklamasıdır.
+ +Sisteminizde yeterince yedek bellek olduÄundan eminseniz, bu + önbellekte daha fazla dosya saklanacaÄından emin olabilirsiniz. + Bundan, önbelleÄin sistem belleÄinde verimli biçimde tutulması için + httpdâde ek bir yapılandırmaya gidilmesinin gerekmediÄi sonucu + çıkarılabilir.
+ +Bundan baÅka, iÅletim sistemi dosyaların deÄiÅtiÄi ve silindiÄi + zamanları bildiÄinden bu tür dosyaların içerikleri gerektiÄinde + önbellekten kendiliÄinden silinmiÅ olur. Bellek içinde dosya + saklarken dosyaların deÄiÅtirilme zamanlarını bilme olanaÄı + olmadıÄından bu durum httpdâye büyük yarar saÄlar.
+ + +İÅletim sisteminin dosyaların önbelleklenmesi için saÄladıÄı bunca + yarara ve baÅarım artıÅına karÅın bellek içinde dosya önbelleklemenin + httpd tarafından yerine getirilmesinin daha iyi olacaÄı bazı durumlar + vardır.
+ +MMapFile yönergesi ilemod_file_cache modülü, bir duraÄan dosyanın
+ içeriÄini sunucunun baÅlatılması sırasında (mmap sistem çaÄrısıyla)
+ belleÄe eÅlenmesini mümkün kılmak için MMapFile yönergesini saÄlar.
+ httpd bu dosyaya gelecek sonraki istekler için dosyanın bellekiçi
+ içeriÄini kullanacaktır.
+ MMapFile /usr/local/apache2/htdocs/index.html
+
CacheFile
+ yönergesinde olduÄu gibi bu dosyalarda httpd baÅlatıldıktan sonra
+ yapılacak bir deÄiÅiklikten httpdânin haberi olmayacaktır.
MMapFile yönergesi
+ ayırdıÄı belleÄin toplam miktarı ile ilgilenmez, dolayısıyla
+ yönergenin aÅırı kullanımından kaçınmalısınız. httpdânin çocuk
+ süreçlerinin her biri bu belleÄin kendilerine ait birer kopyasını
+ yapacaÄından belleÄe eÅlenen dosyaların çok yer kaplamaması büyük
+ önem taÅımaktadır; aksi takdirde iÅletim sistemi belleÄi diske
+ takaslayacaÄından beklenen fayda saÄlanamayacaktır.
CacheQuickHandler
+ yönergesine On deÄerinin atandıÄı öntanımlı durumda
+ mod_cache kullanımı, daha çok sunucunun önüne
+ vidalanmıŠönbelleklemeli bir karÅı vekile sahip olmak gibidir. Ãzgün
+ sunucunun bir harici önbellekmiŠgibi sorgulanmasını gerektirmeyen tüm
+ istekler önbellekleme modülü tarafından karÅılanacaktır. Bu durum
+ httpd'nin güvenlik modelini büyük ölçüde deÄiÅtirir.
Olası .htaccess dosyalarının dosya sisteminin tamamında
+ taranması çok pahalı bir iÅlem olduÄundan mod_cache,
+ (iÅlemi hızlandırmak için) önbelleÄe almanın temel amacını kısmen
+ gözardı ederek, önbellekteki içeriÄin sunumu için gerekli
+ yetkilendirmenin olup olmadıÄı konusunda bir karar üretmez. BaÅka bir
+ deyiÅle, eÄer mod_cache bir kısım içeriÄi önbelleÄe
+ almıÅsa içerik zaman aÅımına uÄramadıÄı sürece bu içerik önbellekten
+ sunulacaktır.
ÃrneÄin, yapılandırmanız bir özkaynaÄa IP adresine göre eriÅime izin
+ veriyorsa bu içeriÄin önbelleÄe alınmayacaÄından emin olmalısınız.
+ Bunu CacheDisable
+ yönergesini veya mod_expires modülünü kullanarak
+ yapabilirsiniz. Bunu yapmaz, olayı kendi haline bırakırsanız
+ mod_cache bir karÅı vekil gibi çalıÅarak sunulan her
+ içeriÄi önbelleÄe alacak ve hangi IP adresinden gelirse gelsin her
+ istemciye bunu sunacaktır.
CacheQuickHandler
+ yönergesine Off atandıÄı takdirde, istek iÅleme
+ aÅamalarının tamamı yerine getirilir ve güvenlik modeli deÄiÅmeden
+ kalır.
Son kullanıcılarıın isteklerine önbellekten hizmet sunulduÄundan + önbelleÄin kendisi içerikle etkileÅime geçmek isteyenlerin veya + içeriÄi tahrif etmek isteyenlerin hedefi haline gelebilir. httpdâyi + çalıÅtıran kullanıcı tarafından her zaman önbelleÄe yazılabileceÄini + akıldan çıkarmamak önemlidir. Bu durumda alıÅılmıÅın tersine tüm + içeriÄin Apache kullanıcısı tarafından yazılamamasının saÄlanması + önerilir.
+ +EÄer Apache kullanıcısı, örneÄin bir CGI sürecindeki açık nedeniyle
+ tehlikeye atılırsa, önbellek hedef alınabilir.
+ mod_cache_disk kullanılırken önbellekteki bir öÄeyi
+ deÄiÅtirmek veya önbelleÄe yeni bir öÄe eklemek görece daha
+ kolaydır.
Bu risk, Apache kullanıcısını kullanan diÄer saldırı türleriyle
+ karÅılaÅtırıldıÄında daha yüksektir. mod_cache_disk
+ kullanıyorsanız Åunları aklınızdan çıkarmayın: (1) httpd güvenlik
+ güncellemelerini takip edin ve sunucunuzu buna göre güncelleyin. (2)
+ Mümkünse suEXEC kullanarak CGI süreçlerini
+ Apache kullanıcısı olmayan bir kullanıcının aidiyetinde çalıÅtırın.
httpd bir önbellekli vekil sunucu olarak çalıÅtıÄında önbellek + zehirlenmesi adı verilen sorunla karÅılaÅılma olasılıÄı vardır. + Ãnbellek zehirlenmesi, vekil sunucunun özgün sunucudan yanlıŠ(ve + genellikle istenmeyen) içerik almasına sebep olan bir saldırı türünü + betimlemek için yaygın olarak kullanılan bir terimdir.
+ +ÃrneÄin httpdânin çalıÅtıÄı sistemin kullandıÄı DNS sunucuları DNS + önbellek zehirlenmesinden etkilenebilecek durumdaysa, bir saldırgan + httpdânin istekleri almak için baÅvuracaÄı kaynak sunucunun yerini + deÄiÅtirebilir. DiÄer bir örnek, HTTP istek kaçakçılıÄı adı verilen + bir saldırı türüdür.
+ +Bu belge HTTP istek kaçakçılıÄını derinliÄine incelenmesi için uygun + yer deÄildir (böyle kaynaklara arama motorunuzla eriÅebilirsiniz). + Bununla birlikte, vekil tarafından kaynak sunucudan alınan içeriÄi + tamamen denetim altına almak amacıyla kaynak sunucudaki bir açıÄı + istismar etmeye yönelik bir dizi istek yapılabileceÄinin olasılık + dahilinde olduÄunu bilmenizde yarar vardır.
+ + +Vary mekanizması aynı URL'nin çok sayıda sürümünün yan yana
+ önbelleklenmesini mümkün kılar. İstemci tarafından saÄlanan baÅlık
+ deÄerlerine baÄlı olarak, önbellek istemciye gönderilecek doÄru yanıtı
+ bulacaktır. Normal kullanımda olası deÄerlerin çok geniÅ olduÄunun
+ bilindiÄi durumda bir baÅlıÄı (örn, User-Agent)
+ deÄiÅikliÄe uÄratma çabası bu mekanizmayı bir sorun haline getirebilir.
+ Sitenin tanınırlıÄına baÄlı olarak aynı URL'nin binlerce hatta
+ milyonlarca önbellek girdisi oluÅabilir ve bunlar önbellekteki diÄer
+ girdilerin yerini alabilir.
DiÄer yandan, belli bir özkaynaÄın URL'sinin her istekte
+ deÄiÅtirilmesi ihtiyacı ortaya çıkabilir. Bu normalde URL dizgesine bir
+ "cachebuster" dizgesi eklenerek yapılır. Bu içerik sunucu tarafından
+ anlamlı bir tazelik ömrüyle önbelleklenebilir olarak imlenmiÅse bu
+ girdiler kısa zamanda önbellekteki meÅru girdilerin yerini alabilir.
+ mod_cache modülü bunun önlenmesi için CacheIgnoreURLSessionIdentifiers
+ yönergesine sahipse de bu yönerge, yoldaki vekillerin veya tarayıcı
+ önbelleklerinin aynı hizmet reddi saldırısına maruz kalmamaları için
+ dikkatle kullanılmalıdır.
Mevcut Diller: en |
diff --git a/docs/manual/caching.xml.meta b/docs/manual/caching.xml.meta
index 22406e7caf5..c6ba0165a9e 100644
--- a/docs/manual/caching.xml.meta
+++ b/docs/manual/caching.xml.meta
@@ -9,6 +9,6 @@
Apache 2.x, esneklik, taÅınabilirlik ve baÅarım arasında bir denge
@@ -60,7 +59,7 @@
(RAM). Bir HTTP sunucusu asla takaslama yapmamalıdır. Ãünkü takaslama,
kullanıcının "yeterince hız" umduÄu noktada sunumun gecikmesine sebep
olur. Böyle bir durumda kullanıcılar yüklemeyi durdurup tekrar
- baÅlatma eÄilimindedirler; sonuçta yük daha da artar. MaxClients yönergesinin deÄerini
+ baÅlatma eÄilimindedirler; sonuçta yük daha da artar. MaxRequestWorkers yönergesinin deÄerini
deÄiÅtirerek takaslamaya sebep olabilecek kadar çok çocuk süreç
oluÅturulmasını engelleyebilirsiniz ve böyle bir durumda bunu mutlaka
yapmalısınız. Bunun için yapacaÄınız iÅlem basittir: top
@@ -392,7 +391,7 @@
demektir. Bunun için mod_status çıktısını bir
kılavuz olarak kullanabilirsiniz.
Süreç oluÅturmayla ilgili olarak süreç ölümü MaxRequestsPerChild deÄeri ile
+
Süreç oluÅturmayla ilgili olarak süreç ölümü MaxConnectionsPerChild deÄeri ile
saÄlanır. Bu deÄer öntanımlı olarak 0 olup, çocuk süreç
baÅına istek sayısının sınırsız olduÄu anlamına gelir. EÄer
yapılandırmanızda bu deÄeri 30 gibi çok düÅük bir
@@ -690,69 +689,10 @@
deÄildir. Böyle mimarilerde çok sayıda Listen yönergesi kullanmak güvenilir
olmayacaktır.
AcceptMutex yönergesi,
- seçilen muteks gerçeklenimini çalıÅma anında deÄiÅtirmek için
- kullanılabilir.
AcceptMutex flockBu yöntem, bir kilit dosyasını kilitlemek için
- flock(2) sistem çaÄrısını kullanır (Kilit dosyasının
- yeri LockFile
- yönergesiyle belirtilir).
AcceptMutex fcntlBu yöntem, bir kilit dosyasını kilitlemek için
- fcntl(2) sistem çaÄrısını kullanır (Kilit dosyasının
- yeri LockFile
- yönergesiyle belirtilir).
AcceptMutex sysvsem(1.3 ve sonrası) Bu yöntem muteksi gerçeklemek için SysV tarzı
- semaforları kullanır. Maalesef, SysV tarzı semaforların bazı yan
- etkileri vardır. Bunlardan biri Apache'nin semaforu temizlemeden
- ölme ihtimalidir (ipcs(8) kılavuz sayfasına bakınız).
- DiÄer biri, CGI'lerin sunucu ile aynı kullanıcı kimliÄini
- kullanmaları nedeniyle semafor arayüzünün hizmet reddi
- saldırılarına açık olmasıdır (suexec veya
- cgiwrapper gibi bir Åeyler kullanmadıkça bütün
- CGI'ler için söz konusudur).
AcceptMutex pthread(1.3 ve sonrası) Bu yöntem POSIX mutekslerini kullanır ve POSIX - evreleri belirtiminin tamamen gerçeklendiÄi mimarilerde çalıÅması - gerekirse de sadece Solaris (2.5 ve sonrası) üzerinde ve sadece - belli yapılandırmalarla çalıÅmakta gibi görünmektedir. Bunu - denemiÅseniz sunucunuzun çöktüÄünü ve yanıt vermediÄini - görmüÅsünüzdür. Sadece duruk içerikli sunucular iyi - çalıÅmaktadır.
-AcceptMutex posixsem(2.0 ve sonrası) Bu yöntem POSIX semaforlarını kullanır. EÄer - iÅlem sırasında bir evre muteks kaynaklı parçalama arızalarıyla - karÅı karÅıya kalırsa HTTP sunucusunun çökmesiyle semaforun sahibi - kurtarılamaz.
-EÄer sisteminiz yukarıda bahsedilenler dıÅında baÅka bir dizgileme - yöntemi kullanıyorsa bununla ilgili kodun APR'ye eklenmesi girilen - zahmete deÄecektir.
+Mutex yönergesi,
+ mpm-accept muteks gerçeklenimini çalıÅma anında deÄiÅtirmek
+ için kullanılabilir. Farklı muteks gerçeklenimleri ile ilgili hususlar
+ bu yönergede belgelenmiÅtir.
BaÅka bir çözüm daha vardır ancak döngü kısmen dizgilenmeyeceÄinden (yani belli sayıda sürece izin verilemeyeceÄinden) asla @@ -814,9 +754,7 @@ bahsedildiÄi gibi, bir HTTP sunucusunun protokolü güvenilir Åekilde gerçeklemesi için her iki yöndeki iletiÅimi birbirinden baÄımsız olarak (iki yönlü bir TCP baÄlantısının her - yarısını diÄerinden baÄımsız olarak) kapatması gerekir. Bu olgu baÅka - sunucular tarafından çoÄunlukla dikkate alınmaz fakat Apache'nin 1.2 - sürümünden beri gerektiÄi gibi gerçeklenmektedir.
+ yarısını diÄerinden baÄımsız olarak) kapatması gerekir.Bu özellik Apache'ye eklendiÄinde Unix'in çeÅitli sürümlerinde
uzgörüsüzlükten dolayı bir takım geçici telaŠsorunlarına sebep oldu.
diff --git a/docs/manual/misc/perf-tuning.xml.meta b/docs/manual/misc/perf-tuning.xml.meta
index a4ba1984eb4..38baef00701 100644
--- a/docs/manual/misc/perf-tuning.xml.meta
+++ b/docs/manual/misc/perf-tuning.xml.meta
@@ -10,6 +10,6 @@
Bir HTTP Sunucusunu ayarlarken dikkat edilmesi gerekenler ve bazı ipuçları. Ãneriler kısmen Apacheâye özel kısmen de genel olacaktır.
@@ -40,6 +39,7 @@
Sistem Ayarlarının Korunması
Sunucu dosyalarının öntanımlı olarak korunması
Günlüklerin İzlenmesi
Yapılandırma bölümlerinin birleÅtirilmesiRequestReadTimeout
+ yönergesi bir istemcinin isteÄi göndermek için harcadıÄı zamanı
+ sınırlamayı saÄlar.TimeOut yönergesinin deÄeri düÅürülmelidir. Birkaç
saniye gibi mümkün olduÄunca düÅük bir ayar uygun olabilir. Ancak
TimeOut baÅka iÅlemlerde de
@@ -111,16 +115,17 @@
olacaktır.MaxClients yönergesini kullanın. Ayrıca, baÅarım arttırma belgesine de
+ baÄlantıların sayısını sınırlamak için MaxRequestWorkers yönergesini kullanın. Ayrıca, baÅarım arttırma belgesine de
bakabilirsiniz.event MPMâi
+ kullanmak iyi olabilir. Dahası, event MPMâi
her baÄlantıya yeni bir evre atanmaması için eÅzamansız iÅlem yapar.
- Ancak bu çalıÅma henüz tamamlanmamıÅtır. Ãzellikle de,
+ OpenSSL kütüphanesinin doÄası nedeniyle
event MPMâi mod_ssl ve diÄer girdi
- süzgeçleri ile henüz uyumlu deÄildir.worker MPM'inin davranıÅına geri döner.
Normalde, Apache root kullanıcı tarafından baÅlatılır ve hizmetleri
- sunarken User yönergesi
+ sunarken User yönergesi
tarafından tanımlanan kullanıcının aidiyetinde çalıÅır. Root tarafından
çalıÅtırılan komutlarda olduÄu gibi, root olmayan kullanıcıların
yapacakları deÄiÅikliklerden korunmak konusunda da dikkatli
@@ -282,7 +287,7 @@
Sunucunun bir parçası gibi çalıÅan, mod_php,
mod_perl, mod_tcl ve mod_python
gibi gömülü betik çalıÅtırma seçenekleri sunucuyu çalıÅtıran
- kullanıcının aidiyetinde çalıÅırlar (User yönergesine bakınız). Bu bakımdan bu betik
+ kullanıcının aidiyetinde çalıÅırlar (User yönergesine bakınız). Bu bakımdan bu betik
yorumlayıcılar tarafından çalıÅtırılan betikler, sunucu kullanıcısının
eriÅtiÄi herÅeye eriÅebilirler. Bazı betik yorumlayıcıların getirdiÄi
bazı sınırlamalar varsa da bunlara pek güvenmemek, gerekli sınamaları
@@ -339,7 +344,10 @@
Apacheânin ister istemez yanlıŠanlaÅılan yönlerinden biri öntanımlı eriÅim özelliÄidir. Yani siz aksine bir Åeyler yapmadıkça, sunucu normal URL eÅleme kurallarını kullanarak bir dosyayı bulabildiÄi sürece onu istemciye sunacaktır.
+Apacheânin ister istemez yanlıŠanlaÅılan yönlerinden biri öntanımlı + eriÅim özelliÄidir. Yani siz aksine bir Åeyler yapmadıkça, sunucu normal + URL eÅleme kurallarını kullanarak bir dosyayı bulabildiÄi sürece onu + istemciye sunacaktır.
ÃrneÄin, aÅaÄıdaki durumu ele alalım:
@@ -349,7 +357,9 @@Ve, tarayıcınıza http://localhost/~root/ yazın.
Böylece, istemcilerin tüm dosya sisteminizi gezmelerine izin vermiÅ olursunuz. Bu iÅlemin sonuçlarının önünü almak için sunucu yapılandırma dosyanıza Åunları yazın:
+Böylece, istemcilerin tüm dosya sisteminizi gezmelerine izin vermiÅ + olursunuz. Bu iÅlemin sonuçlarının önünü almak için sunucu yapılandırma + dosyanıza Åunları yazın:
<Directory />
@@ -360,7 +370,9 @@
</Directory>
Bu suretle, dosya sisteminize öntanımlı eriÅimi yasaklamıŠolursunuz. EriÅime izin vermek istediÄiniz dizinler için uygun Directory bölümleri eklemeniz yeterli olacaktır. Ãrnek:
Bu suretle, dosya sisteminize öntanımlı eriÅimi yasaklamıŠolursunuz.
+ EriÅime izin vermek istediÄiniz dizinler için uygun Directory bölümleri eklemeniz yeterli
+ olacaktır. Ãrnek:
<Directory /usr/users/*/public_html>
@@ -377,9 +389,16 @@
</Directory>
Location ve Directory yönergelerinin etkileÅimine de özellikle önem vermelisiniz; örneÄin <Directory /> eriÅimi yasaklarken bir <Location /> yönergesi bunu ortadan kaldırabilir.
Location ve Directory yönergelerinin etkileÅimine de
+ özellikle önem vermelisiniz; örneÄin <Directory />
+ eriÅimi yasaklarken bir <Location /> yönergesi bunu
+ ortadan kaldırabilir.
UserDir yönergesi de size buna benzer bir oyun oynayabilir; yönergeye ./ atamasını yaparsanız, root kullanıcısı söz konusu olduÄunda yukarıda ilk örnekteki durumla karÅılaÅırız. Apache 1.3 veya üstünü kullanıyorsanız, sunucu yapılandırma dosyanızda aÅaÄıdaki satırın mutlaka bulunmasını öneririz:
UserDir yönergesi de size
+ buna benzer bir oyun oynayabilir; yönergeye ./ atamasını
+ yaparsanız, root kullanıcısı söz konusu olduÄunda yukarıda ilk örnekteki
+ durumla karÅılaÅırız. Sunucu yapılandırma dosyanızda aÅaÄıdaki satırın
+ mutlaka bulunmasını öneririz:
Sunucunuzda olup biteni günü gününe bilmek istiyorsanız günlük dosyalarına bakmalısınız. Günlük dosyaları sadece olup biteni raporlamakla kalmaz, sunucunuza ne tür saldırılar yapıldıÄını ve güvenlik seviyenizin yeterli olup olmadıÄını anlamanızı da saÄlarlar. Sunucunuzda olup biteni günü gününe bilmek istiyorsanız günlük dosyalarına bakmalısınız. Günlük dosyaları
+ sadece olup biteni raporlamakla kalmaz, sunucunuza ne tür saldırılar
+ yapıldıÄını ve güvenlik seviyenizin yeterli olup olmadıÄını anlamanızı da
+ saÄlarlar. Bazı örnekler:
UserDir disabled root
@@ -390,7 +409,10 @@
Günlüklerin İzlenmesi
-
İlk örnek, Apache Tomcat - Source.JSP Bozuk İstek Bilgilerini İfÅa AçıÄını istismar etmeyi deneyen saldırıların sayısını verirken ikinci örnek, reddedilen son on istemciyi listeler; örnek:
+İlk örnek, Apache Tomcat Source.JSP Bozuk İstek Bilgilerini İfÅa AçıÄını + istismar etmeyi deneyen saldırıların sayısını verirken ikinci örnek, + reddedilen son on istemciyi listeler; örnek:
- [Thu Jul 11 17:18:39 2002] [error] [client falan.filan.dom] client denied
+ [Thu Jul 11 17:18:39 2002] [error] [client foo.example.com] client denied
by server configuration: /usr/local/apache/htdocs/.htpasswd
GördüÄünüz gibi günlük dosyaları sadece ne olup bittiÄini raporlar, bu bakımdan eÄer istemci .htpasswd dosyasına eriÅebiliyorsa eriÅim günlüÄünüzde Åuna benzer bir kayıt görürsünüz:
GördüÄünüz gibi günlük dosyaları sadece ne olup bittiÄini raporlar, bu
+ bakımdan eÄer istemci .htpasswd dosyasına eriÅebiliyorsa eriÅim günlüÄünüzde Åuna benzer bir
+ kayıt görürsünüz:
- falan.filan.dom - - [12/Jul/2002:01:59:13 +0200] "GET /.htpasswd HTTP/1.1"
+ foo.example.com - - [12/Jul/2002:01:59:13 +0200] "GET /.htpasswd HTTP/1.1"
Bu, sunucu yapılandırma dosyanızda aÅaÄıdaki yapılandırmayı iptal ettiÄiniz anlamına gelir:
+Bu, sunucu yapılandırma dosyanızda aÅaÄıdaki yapılandırmayı iptal + ettiÄiniz anlamına gelir:
- <Files "^.ht*">
+ <Files ".ht*">
Order allow,deny
Deny from all
</Files>
Yapılandırma bölümlerinin birleÅtirilmesi karmaÅık bir iÅlem olup bazı + durumlarda yönergelere baÄlıdır. Yönergeleri bir araya getirirken + aralarındaki baÄımlılıkları daima sınayın.
+mod_access_compat gibi henüz yönerge katıÅtırma
+ mantıÄını gerçeklememiÅ modüller için sonraki bölümlerdeki davranıÅ, bu
+ modüllerin yönergelerini içerip içermemesine baÄlıdır. Yapılandırmada
+ yönergelerin yerleri deÄiÅtirildiÄinde fakat bir katıÅtırma
+ yapılmadıÄında, yapılandırma bir deÄiÅiklik yapılana kadar miras
+ alınır.
Mevcut Diller: en |
diff --git a/docs/manual/misc/security_tips.xml.meta b/docs/manual/misc/security_tips.xml.meta
index 6fc5c16c26d..621cad21f54 100644
--- a/docs/manual/misc/security_tips.xml.meta
+++ b/docs/manual/misc/security_tips.xml.meta
@@ -10,6 +10,6 @@
İsteÄe baÄlı port numarasını belirtmeyi mümkün kılmak için IPv6
- adresleri köÅeli ayraç içine alınır. IPv6 adresi kullanılan bir örnek: diye bir tanım yaparsanız diye bir tanım yaparsanız sona bir / ekleme ihtiyacından dolayı
+ Ayrıca, Düzenli ifadelerin tamamı
+ kullanılabilmektedir. ÃrneÄin, BaÅka bir deyiÅle, basitçe
+ ÃrneÄin aÅaÄıdakini AliasMatch ile deÄiÅtirmek isteyelim: Bu eÅdeÄer DEÄİLdir - bunu yapmayın! Bu herhangi bir yerinde /image/
+ dizgesi bulunan tüm istekleri /ftp/pub/image/ altına gönderecektir: Aynı etkiyi elde etmek için bu gerekiyor: Åüphesiz, İstemcinin yaptıÄı İstemcinin yaptıÄı DiÄer durum kodları için DiÄer durum kodları için AliasMatch yönergesindeki gibi, düzenli
+ ifadelerin tamamı tüm güçleriyle kullanılabilmektedir.
+ ÃrneÄin, Bir dizin içerik dosyası iki kaynaktan gelebilir: Apache 2.0.23âte Sütun Sıralama için Sorgu Seçenekleri yeniden
- düzenlenip tamamen yeni bir sorgu seçenekleri grubu oluÅturulmuÅtur.
+ İstemciye, dizin içeriÄini listelerken neleri hangi sırada
+ listeleyeceÄini belirleyebilmesi için içerik üzerinde biraz denetim
+ saÄlayabileceÄi çeÅitli sorgu dizgesi bileÅenleri saÄlanmıÅtır.
Ãıktı üzerinde kullanıcı denetimini tamamen ortadan kaldırmak için
Normalde öntanımlı açıklama alanının geniÅliÄi 23 bayttır. dosya kısmî dosya ismi içerebileceÄinden çok kısa dosya ismi
+ belirtilmesi yüzünden istemeden de olsa baÅka dosyalarla
+ eÅleÅebileceÄini unutmayın. ÃrneÄin, Açıklama sütununun öntanımlı geniÅliÄi geçersiz kılınabilir hatta
sınırsız açıklama uzunluÄu atanabilir. Bu konu için Mutlak yollar henüz desteklenmemetedir ve çalıÅma anında hiçbir Åeyle
+ eÅleÅmeyeceklerdir. Normalde sadece htaccess baÄlamında kullanılan,
+ göreli yol bilgisi içeren deÄiÅtirgeler, kısmi dizin isimleriyle
+ eÅleÅmemeleri için örtük olarak '*/' öneki alırlar. Yönerge, Mümkünse Yönerge, Yönerge, The Bu yönerge, Bu yönergenin belgesi henüz Türkçeye çevrilmedi.
- Lütfen İngilizce sürümüne bakınız. Bu yönerge, diÄer yapılandırma bölümlerince bir Åekilde miras alınmayan
+ ve Bu yönergeyi kullandıktan sonra, açıkça yoksaymak
+ istediÄiniz kalıpların bir listesi için öntanımlı yapılandırmayı gözden
+ geçirin. Hiç belirtilmediÄinde veya Apache 1.3.3âte Ãok sayıda Bunun net etkisi Bunun net etkisi
+ Belli bir dizine önceki seçenekleri temizleyerek koÅulsuz olarak
tamamen yeni seçenekler atamak istiyorsanız
@@ -879,16 +946,19 @@ Name|Date|Size|Description
Dizin listesinin belli bir sırada gösterilmesini zorunlu kılmak için
- yönergeyi Sütunun tepesindeki sıralama baÄını kaldırmak için
+ Bu yönergenin Sunucu Sunucu Bu yönergenin belgesi henüz Türkçeye çevrilmedi.
- Lütfen İngilizce sürümüne bakınız. Ãntanımlı olarak, Siz yine de bu etkiyi istemezseniz ve yukarıdaki sebepler de size uygun
- deÄilse yönlendirmeyi Åöyle kapatabilirsiniz: Bir yönlendirme sözkonusu olduÄunda bazı tarayıcıların yanlıÅlıkla POST
+ isteklerini GET istekleri haline getirme (böylece POST verisi iptal olur)
+ olasılıÄı olduÄuna da dikkat edin. Bu satırla, (mevcut dosyaları etkilemeden) mevcut olmayan dosyaların
@@ -218,11 +236,23 @@
yapılandırma yeterli olmaktadır. Resim, CSS dosyaları gibi mevcut dosyalar normal olarak sunulur. http://example.com/blog/ gibi bir alt URI yerel-url
+ olarak saÄlanır: Bu modül CGI betiklerine ve SSI sayfalarına aktarılan ortama müdahale
- etmeyi mümkün kılar. Ortam deÄiÅkenleri Bu modül Apache HTTP Sunucusunun çeÅitli modülleri tarafınan kullanılan
+ dahili ortam deÄiÅkenlerime müdahale etmeyi mümkün kılar. bu deÄiÅkenler
+ ayrıca, CGI betiklerine yerel ortam deÄiÅkenleri olarak sunulur ve SSI
+ sayfalarında da kullanılabilir. Ortam deÄiÅkenleri
+ Dahili ortam deÄiÅkenleri olarak kullanılmak üzere sistem ortam
+ deÄiÅkenlerini içeri aktarmak için kullanılır. Bunlar daha sonra Apache
+ HTTP Sunucusunun modüllerinden kullanılabilir, CGI betiklerine ve SSI
+ sayfalarında aktarılabilir. DeÄerler CGI betiklerine ve SSI sayfalarına aktarılmak üzere bir ortam deÄiÅkeni
- tanımlanmasını saÄlar. CGI betiklerine ve SSI sayfalarına aktarılmak ve Apache HTTP Sunucusu
+ modüllerinde kullanılmak üzere bir dahili ortam deÄiÅkeni tanımlanmasını
+ saÄlar. Bu yönerge tarafından atanan dahili ortam deÄiÅkenleri, en baÅta
iÅleme sokulan, ereÅem denetimi, URI-dosya ismi eÅleÅtirmesi gibi istek
iÅleme yönergelerinden sonra iÅleme sokulur. EÄer atadıÄınız ortam deÄiÅkeni,
- bir CGI betiklerine ve SSI sayfalarına bir daha aktarılmamak üzere bir
- ortam deÄiÅkenini ortamdan siler.
- ErrorDocument 500 http://hata.meselae.dom/cgi-bin/dnmci
+ ErrorDocument 500 http://hata.example.com/cgi-bin/dnmci
ErrorDocument 404 /cgi-bin/bad_urls.pl
ErrorDocument 401 /subscription_info.html
ErrorDocument 403 "Kusura bakmayın, bugün hizmet veremiyoruz."
@@ -2693,7 +2693,7 @@ sınırlar.
<Location> iÅlevselliÄi özellikle
SetHandler yönergesi ile birlikte
kullanıÅlı olur. ÃrneÄin, durum isteklerini etkin kılmak ama sadece
- mesela.domâdan gelen isteklere izin vermek için Åöyle bir
+ example.comâdan gelen isteklere izin vermek için Åöyle bir
uygulama yapabilirsiniz:
@@ -4371,16 +4371,17 @@ gerçekleÅmesi için sunucunun geçmesini bekleyeceÄi süre.
<VirtualHost [2001:db8::a00:20ff:fea7:ccea]>
- ServerAdmin webmaster@konak.mesela.dom
- DocumentRoot /www/docs/konak.mesela.dom
- ServerName konak.mesela.dom
- ErrorLog logs/konak.mesela.dom-error_log
- TransferLog logs/konak.mesela.dom-access_log
+ ServerAdmin webmaster@host.example.com
+ DocumentRoot /www/docs/host.example.com
+ ServerName host.example.com
+ ErrorLog logs/host.example.com-error_log
+ TransferLog logs/host.example.com-access_log
</VirtualHost>
Açıklama: Belge aÄacının parçalarının dosya sisteminin parçalarıyla
eÅlenmesini saÄlar ve URL yönlendirmesi yapar.
@@ -110,8 +109,8 @@ eÅlenmesini saÄlar ve URL yönlendirmesi yapar.
Durum: Temel Alias Yönergesi
+
-Açıklama: URLâleri dosya sistemi konumlarıyla eÅler.
+Sözdizimi: Alias URL-yolu
-dosya-yolu|dizin-yoluSözdizimi: Alias URL-yolu dosya-yolu |
+dizin-yoluBaÄlam: sunucu geneli, sanal konak Durum: Temel
@@ -128,11 +127,11 @@ eÅlenmesini saÄlar ve URL yönlendirmesi yapar.
Alias /image /ftp/pub/image
- Modül: mod_alias http://sunucum/image/foo.gif Åeklinde bir istek, sunucunun
- /ftp/pub/image/foo.gif dosyasıyla yanıt vermesine sebep
- olurdu. Sadece tam yol parçaları eÅleÅtirilir; bu bakımdan yukarıdaki
- Alias yapılandırması
- http://sunucum/imagefoo.gif ile eÅleÅmez. Düzenli
+ http://example.com/image/foo.gif Åeklinde bir istek,
+ sunucunun /ftp/pub/image/foo.gif dosyasıyla yanıt vermesine
+ sebep olurdu. Sadece tam yol parçaları eÅleÅtirilir; bu bakımdan
+ yukarıdaki Alias yapılandırması
+ http://example.com/imagefoo.gif ile eÅleÅmez. Düzenli
ifadelerin kullanıldıÄı daha karmaÅık eÅleÅmeler için AliasMatch yönergesine bakınız.URL-yoluânu bir / ile
@@ -142,8 +141,9 @@ eÅlenmesini saÄlar ve URL yönlendirmesi yapar.
- Alias /icons/ /usr/local/apache/icons//icons URLâsi için bir
- Alias kullanılmayacaktır./icons URLâsi için bir Alias
+ kullanılmayacaktır.Alias hedefleri için ek <Directory> bölümleri
belirtmeniz gerekebileceÄine dikkat ediniz. <Directory> bölümlerinden önce yer alan
@@ -161,8 +161,7 @@ eÅlenmesini saÄlar ve URL yönlendirmesi yapar.
Alias /image /ftp/pub/image
<Directory /ftp/pub/image>
- Order allow,deny
- Allow from all
+ Require all granted
</Directory>
URL-yolu ile harf büyüklüÄüne duyarsız
- eÅleÅmeler saÄlayacak düzenli ifadeler de kullanılabilir:URL-yolu ile harf
+ büyüklüÄüne duyarsız eÅleÅmeler saÄlayacak takma adlar
+ kullanılabilir:
AliasMatch (?i)^/image(.*) /ftp/pub/image$1
Alias
+ ve AliasMatch yönergeleri
+ arasındaki baÅlıca fark Alias
+ yönergesinin, URI'nin ek parçasını, eÅleÅen parçayı geçip saÄ tarafta
+ dosya yolunun ucuna kendiliÄinden kopyalamasıdır. AliasMatch bunu böyle yapmaz. Yani hemen
+ her durumda, düzenli ifadenin istenen URI'nin tamamıyla baÅtan sona
+ eÅleÅmesi ve yer deÄiÅtirmeyi saÄ tarafta yapması istenir.Alias yerine
+ AliasMatch yazmakla aynı etkiyi
+ alamazsınız. En azından düzenli ifadenin baÅına bir ^ ve
+ sonuna bir (.*)$, ikinci deÄiÅtirgenin sonuna da bir
+ $1 eklemeniz gerekir.
+ Alias /image/ /ftp/pub/image/
+
+ AliasMatch /image/ /ftp/pub/image/
+
+ AliasMatch ^/image/(.*)$ /ftp/pub/image/$1
+ Alias yönergesini
+ çalıÅtıÄı yerde AliasMatch
+ kullanmanın hiç gereÄi yoktur. AliasMatch daha karmaÅık Åeyler yapmamızı saÄlar. ÃrneÄin
+ farklı dosya çeÅitlerini farklı dizinlerden sunmak isteyelim:
+ AliasMatch ^/image/(.*)\.jpg$ /files/jpg.images/$1.jpg
+ AliasMatch ^/image/(.*)\.gif$ /files/gif.images/$1.gif
+ URL-yolu olarak göreli yollara izin verilmez.
URL ise ya bir Åema ve konak ismi ile baÅlayan
- bir mutlak URL ya da bir bölü çizgisi ile baÅlayan bir URL yolu olabilir. İkinci durumda URL yolunun baÅına geçerli sunucu ismi ve Åemayı sunucu ekler.URL-yolu ile baÅlayan istekler istemciye hedef
URL konumuna bir yönlendirme isteÄi olarak
@@ -228,17 +276,21 @@ yönlendirir.
Ãrnek:
# Farklı bir konaktaki bir URL'ye yönlendirme
- Redirect /hizmet http://iki.mesela.dom/hizmet
+ Redirect /hizmet http://iki.example.com/hizmet
# Aynı konak üzerinde yönlendirme
Redirect /bir /iki
http://mesela.dom/hizmet/fesmekan.txt
+ http://example.com/hizmet/fesmekan.txt
isteÄine karÅılık istemciye isteÄi
- http://iki.mesela.dom/hizmet/fesmekan.txt olarak yapması
- söylenecektir. Sadece tam yol parçaları eÅleÅtirilir, bu nedenle
- http://mesela.dom/hizmetfesmekan.txt isteÄi yukarıdaki
+ http://iki.example.com/hizmet/fesmekan.txt olarak yapması
+ söylenecektir. Bu GET isteklerinde de geçerlidir. ÃrneÄin,
+ http://example.com/hizmet/foo.pl?q=23&a=42 isteÄi
+ http://iki.example.com/hizmet/foo.pl?q=23&a=42 adresine
+ yönlendirilir. POST'ların iptal edileceÄini unutmayın.
+ Sadece tam yol parçaları eÅleÅtirilir, bu nedenle
+ http://example.com/hizmetfesmekan.txt isteÄi yukarıdaki
yönlendirme ile eÅleÅmeyecektir. Düzenli ifadelerin kullanıldıÄı daha
karmaÅık eÅleÅmeler için RedirectMatch yönergesine bakınız.durum olarak sayısal
- durum kodu belirtilir. EÄer durum 300 ile 399 arasındaysa bir
- URL belirtmek gereklidir, yoksa belirtilmez.
- Belirtilecek durum kodunu Apacheânin bilmesi gerektiÄine dikkat ediniz
- (http_protocol.c dosyasında bulunan
+ durum deÄiÅtirgesiyle
+ sayısal durum kodu belirtilir. EÄer durum 300 ile 399 arasındaysa bir
+ URL belirtmek gereklidir. Aksi takdirde,
+ URL bileÅeni ihmal edilmelidir. Belirtilecek durum kodunun
+ geçerli bir HTTP Status kodu olmalı ve Apache HTTP Sunucusu kodu
+ bilmelidir (http_protocol.c dosyasında bulunan
send_error_response iÅlevine bakınız).Ãrnek:
- Redirect permanent /bir http://mesela.dom/iki
- Redirect 303 /yedi http://mesela.dom/baskabisey
+ Redirect permanent /bir http://example.com/iki
+ Redirect 303 /yedi http://example.com/baskabisey
- RedirectMatch (.*)\.gif$ http://baska.sunucu.dom$1.jpg
+ RedirectMatch (.*)\.gif$ http://baska.example.com$1.jpg
Alias ve
+ AliasMatch arasındaki farklarla
+ ilgili hususlar Redirect ve
+ RedirectMatch arasındakilere de
+ uygulanır. Ayrıntılar için AliasMatch yönergesine bakınız.RedirectPermanent Yönergesi
@@ -365,9 +425,9 @@ URLâye yönlendirir.
ScriptAlias /cgi-bin/ /siteler/cgi-bin/
http://sunucum/cgi-bin/foo Åeklindeki bir istek sunucunun
- /siteler/cgi-bin/foo betiÄini çalıÅtırmasına sebep olur. Bu
- yapılandırma aslında Åuna eÅdeÄerdir:http://example.com/cgi-bin/foo Åeklindeki bir istek
+ sunucunun /siteler/cgi-bin/foo betiÄini çalıÅtırmasına sebep
+ olur. Bu yapılandırma aslında Åuna eÅdeÄerdir:
Alias /cgi-bin/ /siteler/cgi-bin/
@@ -445,7 +505,23 @@ eÅler ve hedefi bir CGI betiÄi olarak çalıÅtırır.
ScriptAliasMatch ^/cgi-bin(.*) /usr/local/apache/cgi-bin$1
URL-yolu için harf büyüklüÄüne duyarsız
+ eÅleÅmeli bir takma ad oluÅturmak mümkünür:
+ ScriptAliasMatch (?i)^/cgi-bin(.*) /usr/local/apache/cgi-bin$1
+ Alias ve
+ AliasMatch arasındaki farklarla
+ ilgili hususlar ScriptAlias ve
+ ScriptAliasMatch arasındakilere
+ de uygulanır. Ayrıntılar için AliasMatch yönergesine bakınız.Açıklama: Unix ls veya Win32 dir kabuk komutunun
yaptıÄı gibi dizin içeriÄini listeler.
@@ -38,9 +37,10 @@ yaptıÄı gibi dizin içeriÄini listeler.
Durum: Temel
-
index.html
- adında bir dosya olarak. Dosyanın ismi DirectoryIndex yönergesi ile belirlenir ve
- mod_dir tarafından denetlenir.index.html
+ adında bir dosya olarak. Kullanılan dosyanın veya dosyaların ismi
+ DirectoryIndex yönergesi ile
+ belirlenir ve mod_dir tarafından denetlenir.Sütun Sıralamada Sorgu Seçenekleri
- IndexOptions yönergesinin
IgnoreClient
@@ -283,7 +284,8 @@ metni belirler.
(") içine alınmalıdır.Ãrnek
- AddDescription "Mars Gezegeni" /resimler/mars.gif
+ AddDescription "Mars Gezegeni" mars.gif
+ AddDescription "Dostum Marshall" dostlar/mars.gif
IndexOptions SuppressIcon
@@ -292,6 +294,15 @@ metni belirler.
ekler. Böylece en fazla 55 karakterlik öntanımlı sütun geniÅliÄine
ulaÅılabilir.le.html doÄrudan
+ le.html ile eÅleÅebileceÄi gibi example.html
+ ile de eÅleÅecektir. Åüpheli durumların ortaya çıkabileceÄi durumlarda
+ mümkün olduÄunca dosya isminin tamamını kullanın ve saptanan ilk
+ eÅleÅmenin kullanılacaÄını aklınızdan çıkarmayın ayrıca,
+ AddDescription listesini de uygun Åekilde sıralayın.IndexOptions yönergesinin DescriptionWidth
seçeneÄinin açıklamasına bakınız.Yol bilgisi içeren deÄiÅtirgeler
+ AddIcon Yönergesi
@@ -320,7 +339,8 @@ metni belirler.
FancyIndexing seçeneÄiyle üretilen dizin listesinde adı
isim ile biten bir dosya için gösterilecek simgeyi
belirler. simge ya simgenin göreli URLâsi (%
- öncelemeli) ya da (alt-metin,url)
+ öncelemeli), tam nitelenmiŠbir uzak URL ya da
+ (alt-metin,url)
biçeminde olmalıdır; buradaki alt-metin simge
gösterilemediÄi durumda tarayıcı tarafından simgenin yerinde
gösterilecek metindir.^^BLANKICON^^ sadece biçemleme için kullanılır,
+ dolayısıyla IndexOptions HTMLTable kullanıyorsanız
+ gereksizdir.Ãrnekler
- AddIcon (IMG,/icons/image.xbm) .gif .jpg .xbm
- AddIcon /icons/dir.xbm ^^DIRECTORY^^
- AddIcon /icons/backup.xbm *~
+ AddIcon (IMG,/icons/image.png) .gif .jpg .png
+ AddIcon /icons/dir.png ^^DIRECTORY^^
+ AddIcon /icons/backup.png *~
AddIcon yerine AddIconByType yönergesi tercih
@@ -355,7 +379,7 @@ göre belirler.
FancyIndexing seçeneÄiyle üretilen dizin listesinde bir
dosya için gösterilecek simgeyi belirler. simge ya
- simgenin göreli URLâsi (% öncelemeli) ya da
+ simgenin göreli URLâsi (% öncelemeli), tam nitelenmiÅ uzak bir URL ya da
(alt-metin,url) biçeminde olmalıdır;
buradaki alt-metin simge gösterilemediÄi durumda
tarayıcı tarafından simgenin yerinde gösterilecek metindir.Ãrnek
- AddIconByEncoding /icons/compress.xbm x-compress
+ AddIconByEncoding /icons/compress.png x-compress
FancyIndexing seçeneÄiyle üretilen dizin listesinde MIME
türü MIME-türü olarak belirtilen bir dosya için
gösterilecek simgeyi belirler. simge ya simgenin
- göreli URLâsi (% öncelemeli) ya da
+ göreli URLâsi (% öncelemeli), tam nitelenmiÅ uzak bir URL ya da
(alt-metin,url) biçeminde olmalıdır;
buradaki alt-metin simge gösterilemediÄi durumda
tarayıcı tarafından simgenin yerinde gösterilecek metindir.DefaultIcon yönergesi FancyIndexing seçeneÄiyle
üretilen dizin listesinde özel bir simge atanmamıŠdosyalar için
gösterilecek simgeyi belirler. URL-yolu simgeye
- bir göreli URL (% öncelemeli) belirtir.Ãrnek
- DefaultIcon /icon/unknown.xbm
+ DefaultIcon /icon/unknown.png
IndexOptions +SuppressHTMLPreamble ataması yapmanız
gerekecektir.
+Ayrıca bakınız:
+
+
ReadmeNameIndexHeadInsert Yönergesi
@@ -500,6 +529,7 @@ belirler.
Açıklama: Dizin içerik listesinden gizlenecek dosyaların listesi belirtilir.
+Sözdizimi: IndexIgnore dosya [dosya] ...Ãntanımlı: IndexIgnore "."BaÄlam: sunucu geneli, sanal konak, dizin, .htaccess GeçersizleÅtirme: Indexes
@@ -514,23 +544,46 @@ belirler.
öntanımlı olarak içinde bulunulan dizini (Durum: Temel ./) içerir.
- IndexIgnore README .htaccess *.bak *~
+ IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
Düzenli İfadeler
+ <DirectoryMatch> gibidüzenli ifadeler içeren yapılandırma
+ bölümlerinde henüz çalıÅmamaktadır.IndexIgnoreReset Yönergesi
-
+Açıklama: Empties the list of files to hide when listing
-a directory Açıklama: Bir dizini listelerken gizlenecek dosyalar listesini boÅaltır
+ Sözdizimi: IndexIgnoreReset ON|OFFBaÄlam: sunucu geneli, sanal konak, dizin, .htaccess GeçersizleÅtirme: Indexes Durum: Temel
-Modül: mod_autoindex
-Uyumluluk: 2.3.10 and later
+Uyumluluk: Apache HTTP Sunucusunun 2.3.10 ve sonraki sürümlerinde kullanılabilmektedir. IndexIgnore tarafından yoksayılan dosyaları
+ kaldırır.
+ <Directory /var/www>
+ IndexIgnore *.bak .??* *~ *# HEADER* README* RCS CVS *,v *,t
+ </Directory>
+ <Directory /var/www/backups>
+ IndexIgnoreReset ON
+ IndexIgnore .??* *# HEADER* README* RCS CVS *,v *,t
+ </Directory>
+ IndexOptions Yönergesi
@@ -538,6 +591,7 @@ a directory
-
+Sözdizimi: IndexOptions [+|-]seçenek [[+|-]seçenek]
...Ãntanımlı: Ãntanımlı olarak hiçbir seçenek etkin deÄildir.BaÄlam: sunucu geneli, sanal konak, dizin, .htaccess GeçersizleÅtirme: Indexes
@@ -548,32 +602,34 @@ a directory
belirtilebilir:
Durum: Temel
-
Charset=karakter-kümesi (Apache 2.0.61
- ve sonrası)IndexOptions HTMLTable etkin ve bir
+ IndexStyleSheet tanımlı olduÄunda dizin listesi
+ tablosunun her satırına fazladan bir CSS sınıfı bildirimi ekler.
+ Tablonun her satırına uygulanmaması için standart even ve
+ odd sınıfları yerine even-ALT ve
+ odd-ALT bildirimleri kullanılabilir. Burada
+ ALT ya bir dosya biçimiyle iliÅkili standat bir alt
+ dizgesidir ya da AddAlt* yönergeleriyle tanımlanan bir
+ alt dizgesidir.
+ Charset=karakter-kümesi (Apache HTTP
+ Sunucusunun 2.0.61 ve sonraki sürümleri)Charset seçeneÄi üretilen sayfa için bir karakter
kümesi belirtebilmenizi saÄlar. Dizinin bulunduÄu dosya sisteminin
- karakter kodlamasına baÄlı olarak öntanımlı deÄeri ya
- ISO-8859-1 ya da UTF-8âdir.
+ karakter kodlamasına baÄlı olarak öntanımlı deÄeri Windows ve Mac OS
+ X'te UTF-8, diÄerlerinde ISO-8859-1âdir (İlgili
+ dosya sisteminin Unicode dosya isimleri kullanıp kullanmamasına
+ baÄlıdır).
Ãrnek
IndexOptions Charset=UTF-8
Type=MIME-türü (Apache 2.0.61 ve
- sonrası)Type seçeneÄi üretilen sayfa için bir MIME türü
- belirtebilmenizi saÄlar. Ãntanımlı deÄer text/htmlâdir.
-
- Ãrnek
- IndexOptions Type=text/plain
- DescriptionWidth=[n | *]
- (Apache 2.0.23 ve sonrası)DescriptionWidth=[n | *]DescriptionWidth seçeneÄi üretilen sayfada açıklama
sütununun geniÅliÄini sizin belirleyebilmenizi saÄlar. Bu seçenek
@@ -595,8 +651,7 @@ a directory
FoldersFirst
- (Apache 2.0.23 ve sonrası)FoldersFirstFancyIndexing seçeneÄi etkinse etkili
olacaktır.HTMLTable
- (Deneysel, Apache 2.0.23 ve sonrası)HTMLTableFancyIndexing seçeneÄi ile birlikte süslü listeleme
- için basit bir tablo oluÅturur. Fakat bu eski tarayıcıları yanıltır.
- Bununla birlikte, Linux, WinNT gibi saÄdan sola veya soldan saÄa yazım
- yönünün UTF-8 karakter koduna göre deÄiÅtiÄi platformlarda dosya
- isimleri ve açıklamalar için bu özellikle gerekli olabilir.FancyIndexing
+ seçeneÄi ile birlikte süslü listeleme için basit bir tablo oluÅturur.
+ UTF-8'in etkin olduÄu platformlarda gereklidir. Bununla birlikte,
+ Linux, WinNT gibi saÄdan sola veya soldan saÄa yazım yönünün deÄiÅtiÄi
+ platformlarda dosya isimleri ve açıklamalar için bu özellikle gerekli
+ olabilir.IconsAreLinksheight ve width özniteliklerini içermesine
sebep olur. Böylece tarayıcının tüm simgelerin yüklenmesini beklemeden
sayfa yerleÅimi için bir ön hesaplama yapabilmesi mümkün olur. Seçenek
- bir deÄer belirtilmeksizin kullanıldıÄında Apache tarafından atanmıÅ
- standart simge yüksekliÄi öntanımlıdır.
+ bir deÄer belirtilmeksizin kullanıldıÄında Apache http tarafından
+ atanmıŠstandart simge yüksekliÄi öntanımlıdır.
IconWidth[=benek-sayısı]height ve width özniteliklerini içermesine
sebep olur. Böylece tarayıcının tüm simgelerin yüklenmesini beklemeden
sayfa yerleÅimi için bir ön hesaplama yapabilmesi mümkün olur. Seçenek
- bir deÄer belirtilmeksizin kullanıldıÄında Apache tarafından atanmıÅ
- standart simge geniÅliÄi öntanımlıdır.
+ bir deÄer belirtilmeksizin kullanıldıÄında Apache httpd tarafından
+ atanmıŠstandart simge geniÅliÄi öntanımlıdır.
IgnoreCase-NameWidth biçeminde
belirtildiÄinde mod_autoindex uygun geniÅliÄi kendisi
- hesaplayacaktır.NameWidth=n ile sütun geniÅliÄi
n bayt geniÅlikte sabitlenir.ScanHTMLTitlesAddDescription ile bir açıklama tanımlanmımıÅsa httpd
- belgenin title etiketinin içeriÄini okuyacaktır. Bu
+ okunmasını saÄlar. Dosya için AddDescription ile bir açıklama tanımlanmımıÅsa Apache
+ httpd belgenin title etiketinin içeriÄini okuyacaktır. Bu
seçenek iÅlemciyi ve diski fazla meÅgul eder.ShowForbiddenIndexOptions
- IgnoreClient ile saÄlanmaktadır.
+ saÄlanır. Bu davranıŠIndexOptions IgnoreClient ile saÄlanmaktadır.
SuppressDescriptionReadmeName yönergesi
+ de belirtilirse ve bu dosya mevcutsa, kapayan
+ </body></html> etiketleri de çıktı bulunmaz. Buna
+ dayanarak bu etiketleri de sizin koymanız gerekebilir.
SuppressIcon
- (Apache 2.0.23 ve sonrası)pre
@@ -732,7 +788,7 @@ a directory
engellenir.SuppressRules
- (Apache 2.0.23 ve sonrası)hr etiketinin kullanımını engeller.
Son belirtim, süslü dizin listelemede kullanılan pre
@@ -743,10 +799,11 @@ a directory
SuppressSizeTrackModified
- (Apache 2.0.23 ve sonrası)Last-Modified ve ETag alanlarının dönmesini
@@ -763,8 +820,17 @@ a directory
sistemlerinde saÄlamaz. Bu gibi durumlarda bu seçeneÄin
kapalı kalması daha iyidir.Type anahtar sözcüÄü üretilen sayfanın MIME içerik
+ türünün belirtilebilmesini saÄlar. text/html öntanımlıdır.
+
+ Ãrnek:
+ IndexOptions Type=text/plain
+ VersionSort
- (Apache 2.0a3 ve sonrası)VersionSort seçeneÄi isimlerinde sürüm numarası bulunan
dosyaların sayısal sıralamaya uygun olarak sıralanmalarını saÄlar.
@@ -791,8 +857,7 @@ a directory
XHTML
- (Apache 2.0.49 ve sonrası)XHTMLXHTML seçeneÄi mod_autoindexâin kodu
HTML 3.2âye deÄil XHTML 1.0âa uygun üretmesini saÄlar.+ veya - Ãnekli SeçeneklerIndexOptions yönergelerinin ele
- alınıÅıyla ilgili önemil deÄiÅiklikler yapılmıÅtır. Bunlar:IndexOptions yönergesinin
+ iÅlenebileceÄine dikkat edin.
IndexOptions
@@ -836,17 +901,19 @@ a directory
bunlar mevcut (üst dizinden miras alınanlar ve/veya önceki atamalar)
IndexOptions yönergelerine uygulanır. Ancak,
önek kullanılmamıŠbir seçeneÄe raslandıÄında, o noktada önceki ve
- miras alınmıŠbu tür seçenekler iptal edilir. Åu örneÄi ele alalım:
+ miras alınmıŠbu tür seçenekler iptal edilir. Åu örneÄi ele
+ alalım:
IndexOptions +ScanHTMLTitles -IconsAreLinks FancyIndexing
IndexOptions +SuppressSize
IndexOptions FancyIndexing +SuppressSize
- atamasına eÅdeÄerdir, çünkü öneksiz FancyIndexing seçeneÄi
- kendinden önceki önekli seçenekleri iptal etmiŠfakat hemen ardından
- eklenmelerine izin vermiÅtir.IndexOptions FancyIndexing +SuppressSize
+ atamasına eÅdeÄerdir, çünkü öneksiz FancyIndexing
+ seçeneÄi kendinden önceki önekli seçenekleri iptal etmiÅ fakat hemen
+ ardından eklenmelerine izin vermiÅtir.IndexOrderDefault yönergesi iki deÄer alır. İlki
sıralama yönünü belirtmek üzere Ascending (küçükten büyüÄe)
veya Descending (büyükten küçüÄe) olmak zorundadır. İkinci
- deÄer ise birincil sıralama anahtarını belirtmek üzere Name,
- Date, Size ve Description
- sözcüklerinden biri olmalıdır (anlamları sırayla: İsim, Tarih, Boyut,
- Açıklama). İkincil sıralama anahtarı daima artan sıralamayla
- dosya ismidir.SuppressColumnSorting sıralama seçeneÄi ile birlikte
- belirtebilirsiniz; böylece, istemcinin farklı sıralamalara sahip içerik
- isteÄini engellemiÅ olursunuz.Name, Date, Size ve
+ Description sözcüklerinden biri olmalıdır (anlamları
+ sırayla: İsim, Tarih, Boyut, Açıklama). İkincil sıralama anahtarı
+ daima artan sıralamayla dosya ismidir.
+
+ SuppressColumnSorting seçeneÄinin yanında, sıralama
+ tercihlerinizi geçersiz kılmak için sorgu dizgesine elle sıralama
+ seçenekleri eklenmesini engellemek için
+ IgnoreClient
+ seçeneÄini de kullanarak istemcinin listeyi yeniden sıralamasını
+ engelleyebilirsiniz.IndexOptions HTMLTable ile birlikte
+ kullanılması sonuçlanan HTML dosyasına bir miktar CSS sınıfı ekler.
+ Tablonun tamamı indexlist için bir CSS kimliÄi verir ve
+ aÅaÄıdaki sınıflar listenin çeÅitli parçalarıyla iliÅkilendirilir:
+
+
+Sınıf Tanım
+tr.indexhead
+ Liste satırının baÅlıÄı
+th.indexcolicon and td.indexcolicon
+ Simge sütunu
+th.indexcolname and td.indexcolname
+ Dosya ismi sütunu
+th.indexcollastmod and td.indexcollastmod
+ Son deÄiÅiklik sütunu
+th.indexcolsize and td.indexcolsize
+ Dosya boyutu sütunu
+th.indexcoldesc and td.indexcoldesc
+ Açıklama sütunu
+tr.breakrow
+ Tablonun altınaki yatay çizgi
+tr.odd and tr.even
+ Tek ve çift satırlar ReadmeName Yönergesi
@@ -923,8 +1018,9 @@ belirler.
ReadmeName yönergesi dizin listesinin sonuna
eklenecek dosyanın ismini belirler. dosya-ismi ile
listeye dahil edilecek dosyanın ismi listelenen dizine göreli olarak
- belirtilir. EÄer dosya ismi bir bölü çizgisi ile baÅlıyorsa DocumentRootâa göreli belirtildiÄi
- varsayılır.DocumentRootâa göreli
+ belirtildiÄi varsayılır.
1. Ãrnek
ReadmeName FOOTER.html
diff --git a/docs/manual/mod/mod_autoindex.xml.meta b/docs/manual/mod/mod_autoindex.xml.meta
index 821a085c5cb..29fe2245094 100644
--- a/docs/manual/mod/mod_autoindex.xml.meta
+++ b/docs/manual/mod/mod_autoindex.xml.meta
@@ -11,6 +11,6 @@
+ Açıklama: Bölü çizgisiyle biten yönlendirmeleri yapar ve dizin içeriÄi dosyalarını sunar. Durum: Temel
@@ -48,11 +47,11 @@
kendiliÄinden dizin içerik listesi üretimini tamamen iptal
edebilirsiniz.
- Modül Betimleyici: dir_module http://sunucum/filanca/birdizin Åeklinde bir istek
- aldıÄında birdizin bir dizinin ismiyse âbölü çizgisiyle
- bitenâ bir yönlendirme söz konusudur. Dizinler URL sonuna bir bölü
- çizgisi eklenmesini gerektirir, bu bakımdan mod_dir
- modülü isteÄi http://sunucum/filanca/birdizin/ Åeklinde
+ http://example.com/filanca/birdizin Åeklinde bir
+ istek aldıÄında birdizin bir dizinin ismiyse âbölü
+ çizgisiyle bitenâ bir yönlendirme söz konusudur. Dizinler URL sonuna bir
+ bölü çizgisi eklenmesini gerektirir, bu bakımdan mod_dir
+ modülü isteÄi http://example.com/filanca/birdizin/ Åeklinde
yönlendirir.Yönergeler
@@ -116,19 +115,33 @@
DirectoryIndexRedirect Yönergesi
-
Açıklama: Configures an external redirect for directory indexes.
+ Açıklama: Dizin içerik listeleri için harici bir yönlendirme yapılandırır.
Sözdizimi: DirectoryIndexRedirect on | off | permanent | temp | seeother |
-3xx-code
+3xx-kodu
Ãntanımlı: DirectoryIndexRedirect offBaÄlam: sunucu geneli, sanal konak, dizin, .htaccess GeçersizleÅtirme: Indexes Durum: Temel
-Modül: mod_dir
-Uyumluluk: Available in version 2.3.14 and later
+Uyumluluk: Apache HTTP Sunucusunun 2.3.14 ve sonraki sürümlerinde
+ kullanılabilmektedir. DirectoryIndex listeyi
+ istemciye Åeffaf olarak seçip gönderir.
+ DirectoryIndexRedirect ise harici bir
+ yönlendirmeye sebep olur.Ãrnek
+ DirectoryIndexRedirect on
+ http://example.com/docs/ için yapılan bir istek, http://example.com/docs/index.html (mevcutsa) adresine geçici bir
+ yönlendirme döndürür.DirectorySlash Yönergesi
@@ -161,7 +174,9 @@
-
# AÅaÄıdaki güvenlik uyarısına bakınız!
@@ -183,6 +198,9 @@
Fakat bölü çizgisi ile bitmeyen bir istek dizin içeriÄinin
listelenmesi ile sonuçlanırdı.
- FallbackResource not-404.php
+ FallbackResource /not-404.php
- FallbackResource index.php
+ FallbackResource /index.php
+
+ <Directory /web/example.com/htdocs/blog>
+
+
+ FallbackResource /blog/index.php
+
+ </Directory>
+ Açıklama: CGI betiklerine ve SSI sayfalarına aktarılan deÄiÅkenlere müdahale
etmek için kullanılır.
@@ -35,9 +34,12 @@ etmek için kullanılır.
Durum: Temel Kaynak Dosyası: mod_env.c Ãzet
- httpd süreci
- baÅlatılırken kabuktan aktarılabilir. Bundan baÅka, yapılandırma
+ httpd süreci baÅlatılırken kabuktan aktarılabilir.
+ Bundan baÅka, yapılandırma
sürecinde tanımlı veya tanımsız yapılabilirler.Yönergeler
@@ -49,6 +51,7 @@ etmek için kullanılır.
Ayrıca bakınız:
Durum: Temel Modül: mod_env httpd süreci baÅlatılırken CGI betiklerine ve SSI
- sayfalarına kabuktan aktarılabilecek ortam deÄiÅkenleri belirtilir.httpd süreci
+ baÅlatılırken kabuÄun iÅletim sistemi ortamından gelir.Ãrnek
SetEnv SPECIAL_PATH /foo/bin
@@ -90,12 +97,16 @@ etmek için kullanılır.
RewriteRule yönergesindeki
+ bir RewriteRule yönergesindeki
gibi erken iÅlem aÅamalarına girdi saÄlıyorsa, bu durumda ortam deÄiÅkenini
SetEnvIf ile atamalısınız.Ayrıca bakınız:
+
UnsetEnv Yönergesi
@@ -109,7 +120,7 @@ etmek için kullanılır.
Modül: mod_env
UnsetEnv LD_LIBRARY_PATH
diff --git a/docs/manual/mod/mod_env.xml.meta b/docs/manual/mod/mod_env.xml.meta
index dfc9895f604..176418a6979 100644
--- a/docs/manual/mod/mod_env.xml.meta
+++ b/docs/manual/mod/mod_env.xml.meta
@@ -11,6 +11,6 @@
AddType media-type extension
[extension] ... skdh T
-Maps the given filename extensions onto the specified content
type Alias URL-yolu
-dosya-yolu|dizin-yolu sk T
+URLâleri dosya sistemi konumlarıyla eÅler. Alias URL-yolu dosya-yolu |
+dizin-yolu sk T URLâleri dosya sistemi konumlarıyla eÅler. AliasMatch düzenli-ifade
dosya-yolu|dizin-yolu sk T
@@ -373,8 +373,8 @@ server
disabled | yerel-url [yerel-url] ...URLâleri dosya sistemi konumlarıyla düzenli ifadeleri kullanarak
eÅler. index.html skdh T İstemci bir dizin istediÄinde dizin içeriÄini listeler.
DirectoryIndexRedirect on | off | permanent | temp | seeother |
-3xx-code
- off skdh T Configures an external redirect for directory indexes.
+3xx-kodu
+ off skdh T Dizin içerik listeleri için harici bir yönlendirme yapılandırır.
<DirectoryMatch düzifd>
... </DirectoryMatch> sk Ã
@@ -472,10 +472,10 @@ an imagemap
Bir düzenli ifade ile eÅleÅen dosya sistemi dizinlerinin içeriklerine uygulanacak bir yönerge grubunu sarmalar. IncludeOptional dosya-yolu|dizin-yolu|joker skd à DiÄer yapılandırma dosyalarının sunucu yapılandırma dosyasına dahil edilmesini saÄlar IndexHeadInsert "imlenim ..." skdh T
-Bir dizin sayfasının HEAD bölümüne metin yerleÅtirir. IndexIgnore dosya [dosya] ... skdh T Dizin içerik listesinden gizlenecek dosyaların listesi belirtilir.
+ IndexIgnore dosya [dosya] ... "." skdh T
+Dizin içerik listesinden gizlenecek dosyaların listesi belirtilir.
+ IndexIgnoreReset ON|OFF skdh T
-Bir dizini listelerken gizlenecek dosyalar listesini boÅaltır
IndexIgnoreReset ON|OFF skdh T Empties the list of files to hide when listing
-a directory IndexOptions [+|-]seçenek [[+|-]seçenek]
... skdh T
diff --git a/docs/manual/rewrite/index.html.tr.utf8 b/docs/manual/rewrite/index.html.tr.utf8
index 8fb9752e64f..c7e5a2b4835 100644
--- a/docs/manual/rewrite/index.html.tr.utf8
+++ b/docs/manual/rewrite/index.html.tr.utf8
@@ -23,68 +23,54 @@
tr |
zh-cn Dizin içerik listesini yapılandıracak seçenekler belirtilir.
-+``mod_rewriteâı harika yapan Åey, Sendmailâın tüm yapılandırma - kolaylıÄı ve esnekliÄine sahip olmasıdır. mod_rewriteâı kötü yapan - Åey ise Sendmailâın tüm yapılandırma kolaylıÄı ve esnekliÄine sahip - olmasıdır.''
+-
mod_rewritemodülü gelen URL isteklerinde deÄiÅiklik + yapabilmek için düzenli ifade kurallarına + dayalı, devingen bir yol sunar. Böylece, keyfi URL'leri dahili URL + yapınızla kolayca eÅleyebilirsiniz.-- Brian Behlendorf
-
- Apache Group
Gerçekten esnek ve güçlü bir URL kurgulama mekanizması oluÅturmak için + sınısız sayıda kural ve her kural için de sınırsız sayıda koÅul destekler. + URL deÄiÅiklikleri çeÅitli sınamalara dayanır; sunucu deÄiÅkenleri, HTTP + baÅlıkları, ortam deÄiÅkenleri, zaman damgaları hatta çeÅitli biçimlerde + harici veritabanı sorguları bile bu amaçla kullanılabilir.
--- -``Hakkında tonlarca örnek ve belge olmasına raÄmen mod_rewrite kara - büyüdür. MüthiÅ güzel bir kara büyü ama yine de kara büyü.''
- --- Brian Moore
-
- bem@news.cmc.net
URL kurgulamasının İsviçre Ãakısı olan mod_rewrite
- modülünün belgelerine hoÅgeldiniz!
Bu modül istenen URLâleri çalıÅma anında yeniden yazmak için (düzenli - ifade çözümleyiciden yararlanan) kurallara dayalı bir yeniden yazma - motoru kullanır. Gerçekten esnek ve güçlü bir URL kurgulama - mekanizması oluÅturmak için sınısız sayıda kural ve her kural için de - sınırsız sayıda koÅul destekler. URL deÄiÅiklikleri çeÅitli sınamalara - dayanır; sunucu deÄiÅkenleri, HTTP baÅlıkları, ortam deÄiÅkenleri, - zaman damgaları hatta çeÅitli biçimlerde harici veritabanı sorguları - bile bu amaçla kullanılabilir.
- -Bu modül URLâlerin tamamında (path-info kısmı dahil) hem sunucu
- baÄlamında (httpd.conf) hem de dizin baÄlamında
+
Yeniden yazma kuralları URLâlerin tamamında (path-info kısmı ve sorgu
+ dizgesi dahil) hem sunucu baÄlamında (httpd.conf) hem sanal
+ konaklar baÄlamında (<VirtualHost> bölümleri), hem de dizin baÄlamında
(.htaccess dosyaları ve <Directory>
bölümleri) çalıÅır ve URL üzerinde sorgu dizgesi bölümleri bile
- oluÅturabilir. Yeniden yazılan URL sonuçta dahili iÅlemlerde, harici
- yönlendirmelerde ve hatta dahili vekalet iÅlemlerinde
- kullanılabilir.
Fakat tüm bu iÅlevsellik ve esnekliÄin bir bedeli vardır: karmaÅıklık. - Bu yüzden bu modülün yapabildiklerini bir günde anlayabilmeyi - beklemeyin.
+mod_rewrite modülü çok güçlü olduÄundan, gerçekten çok
+ karmaÅık olabilir. Bu belge, baÅvuru
+ belgelerinin tamamlayıcısı olup karmaÅıklıÄı biraz azaltmaya çalıÅır
+ ve mod_rewrite ile elde edilebilen ortak senaryoların
+ oldukça açıklamalı örneklerini saÄlar. Fakat ayrıca,
+ mod_rewrite modülünü kullanmamanız, yerine standart
+ Apache özelliklerini kullanmanız gereken durumları da göstermeye,
+ böylece gereksiz karmaÅıklıktan kurtulmanızı saÄlamaya çalıÅtık.
Mevcut Diller: en |
fr |
diff --git a/docs/manual/rewrite/index.xml.meta b/docs/manual/rewrite/index.xml.meta
index 25046eafe9e..abe6d6ca220 100644
--- a/docs/manual/rewrite/index.xml.meta
+++ b/docs/manual/rewrite/index.xml.meta
@@ -9,7 +9,7 @@
Yapılandırma dosyalarındaki
-yönergeler sunucunun tamamına uygulanacaÄı gibi sadece belli dizinler,
-dosyalar, konaklar veya URLâlere uygulanmakla sınırlanabilir. Bu belgede,
-yapılandırma bölümü taÅıyıcılarınının veya .htaccess dosyalarının,
-yapılandırma dosyalarındaki diÄer yönergelerin etki alanlarını deÄiÅtirtirmek
-için nasıl kullanılacaÄı açıklanmıÅtır.
Yapılandırma dosyalarındaki
+ yönergeler sunucunun tamamına uygulanacaÄı gibi sadece belli dizinler,
+ dosyalar, konaklar veya URLâlere uygulanmakla sınırlanabilir. Bu
+ belgede, yapılandırma bölümü taÅıyıcılarınının veya
+ .htaccess dosyalarının, yapılandırma dosyalarındaki diÄer
+ yönergelerin etki alanlarını deÄiÅtirtirmek için nasıl kullanılacaÄı
+ açıklanmıÅtır.
Yapılandırma Bölümü TaÅıyıcılarının Türleri
Dosya Sistemi ve Site Alanı
Dosya Sistemi, Site Alanı ve Mantıksal İfadeler
Sanal Konaklar
Vekil
Hangi Yönergelere İzin Veriliyor?| İlgili Modüller | İlgili Yönergeler |
|---|---|
İki temel taÅıyıcı türü vardır. TaÅıyıcıların çoÄu her istek için
-deÄerlendirmeye alınır. TaÅıyıcılardaki yönergeler ise sadece bu
-taÅıyıcılarla eÅleÅen istekler için uygulanır. DiÄer yandan,
-<IfDefine>,
-<IfModule> ve
-<IfVersion>
-taÅıyıcıları sadece sunucu baÅlatılırken veya yeniden baÅlatılırken
-deÄerlendirmeye alınır. BaÅlatma sırasında gerektirdikleri koÅullar
-saÄlanıyorsa içerdikleri yönergeler tüm isteklere uygulanır. Aksi
-takdirde, içerdikleri yönergeler yok sayılır.
<IfDefine> yönergesi
-sadece httpd komut satırında uygun parametreler
-tanımlanmıÅsa uygulanabilecek yönergeleri içerir. ÃrneÄin, aÅaÄıdaki
-yapılandırma ile tüm isteklerin diÄer siteye yönlendirilebilmesi sadece
-sunucu httpd -DClosedForNow komut satırı ile baÅlatıldıÄı
-takdirde mümkün olur:
-<IfDefine ClosedForNow>
-
- Redirect / http://otherserver.example.com/
-
-</IfDefine>
-
<IfModule> yönergesi
-sadece belli bir modülün sunucuda kullanılabilir durumda olması halinde
-uygulanabilecek yönergeleri içerir. Modülün ya sunucuyla birlikte duraÄan
-olarak derlenmiŠolması ya da devingen olarak derlenmiŠve yapılandırma
-dosyasında yönergeden önce o modüle iliÅkin bir LoadModule satırının bulunması gerekir. Bu yönergeyi sadece
-belli bir modülün varlıÄının veya yokluÄunun yapılandırma dosyanızın
-çalıÅmasını etkilememesini istediÄiniz durumlarda kullanmalısınız.
-Eksik modüllerle ilgili hata iletilerini engellediÄinden, taÅıyıcı içine,
-her zaman çalıÅması istenen yönergeler konulmamalıdır.
AÅaÄıdaki örnekte, MimeMagicFiles yönergesi sadece mod_mime_magic
-modülü mevcutsa uygulanacaktır.
-<IfModule mod_mime_magic.c>
-
- MimeMagicFile conf/magic
-
-</IfModule>
-
<IfVersion>
-yönergesi sunucunun belli bir sürümünün çalıÅtırılması halinde
-uygulanabilecek yönergeleri içerebilmesi dıÅında <IfDefine> ve <IfModule> yönergeleri gibidir.
-mod_version modülü farklı httpd sürümleri ve farklı
-yapılandırmalarla büyük aÄlarda çalıÅmayı mümkün kılmak veya sürüm
-denemeleri yapabilmek amacıyla tasarlanmıÅtır.
-<IfVersion >= 2.1>
-
- # burası sadece 2.1.0 veya daha üstü sürümlerde
- # iŠgörür.
-
-</IfVersion>
-
<IfDefine>,
-<IfModule> ve
-<IfVersion>
-yönergelerinin önüne "!" konularak olumsuz koÅullar için uygulanabilir.
-Ayrıca, bu bölümler daha karmaÅık sınırlamalar elde etmek amacıyla bir
-diÄerinin içinde kullanılabilirler.
| İlgili Modüller | İlgili Yönergeler |
|---|---|
İki temel taÅıyıcı türü vardır. TaÅıyıcıların çoÄu her istek için
+ deÄerlendirmeye alınır. TaÅıyıcılardaki yönergeler ise sadece bu
+ taÅıyıcılarla eÅleÅen istekler için uygulanır. DiÄer yandan,
+ <IfDefine>,
+ <IfModule> ve
+ <IfVersion>
+ taÅıyıcıları sadece sunucu baÅlatılırken veya yeniden baÅlatılırken
+ deÄerlendirmeye alınır. BaÅlatma sırasında gerektirdikleri koÅullar
+ saÄlanıyorsa içerdikleri yönergeler tüm isteklere uygulanır. Aksi
+ takdirde, içerdikleri yönergeler yok sayılır.
<IfDefine> yönergesi
+ sadece httpd komut satırında uygun parametreler
+ tanımlanmıÅsa uygulanabilecek yönergeleri içerir. ÃrneÄin, aÅaÄıdaki
+ yapılandırma ile tüm isteklerin diÄer siteye yönlendirilebilmesi sadece
+ sunucu httpd -DClosedForNow komut satırı ile baÅlatıldıÄı
+ takdirde mümkün olur:
+ <IfDefine ClosedForNow>
+
+ Redirect / http://otherserver.example.com/
+
+ </IfDefine>
+
<IfModule> yönergesi
+ sadece belli bir modülün sunucuda kullanılabilir durumda olması halinde
+ uygulanabilecek yönergeleri içerir. Modülün ya sunucuyla birlikte duraÄan
+ olarak derlenmiŠolması ya da devingen olarak derlenmiŠve yapılandırma
+ dosyasında yönergeden önce o modüle iliÅkin bir LoadModule satırının bulunması gerekir. Bu
+ yönergeyi sadece belli bir modülün varlıÄının veya yokluÄunun
+ yapılandırma dosyanızın çalıÅmasını etkilememesini istediÄiniz durumlarda
+ kullanmalısınız. Eksik modüllerle ilgili hata iletilerini
+ engellediÄinden, taÅıyıcı içine, her zaman çalıÅması istenen yönergeler
+ konulmamalıdır.
AÅaÄıdaki örnekte, MimeMagicFile yönergesi sadece
+ mod_mime_magic modülü mevcutsa uygulanacaktır.
+ <IfModule mod_mime_magic.c>
+
+ MimeMagicFile conf/magic
+
+ </IfModule>
+
<IfVersion>
+ yönergesi sunucunun belli bir sürümünün çalıÅtırılması halinde
+ uygulanabilecek yönergeleri içerebilmesi dıÅında <IfDefine> ve <IfModule> yönergeleri gibidir.
+ mod_version modülü farklı httpd sürümleri ve farklı
+ yapılandırmalarla büyük aÄlarda çalıÅmayı mümkün kılmak veya sürüm
+ denemeleri yapabilmek amacıyla tasarlanmıÅtır.
+ <IfVersion >= 2.1>
+
+ # burası sadece 2.1.0 veya daha üstü sürümlerde
+ # iŠgörür.
+
+ </IfVersion>
+
<IfDefine>,
+ <IfModule> ve
+ <IfVersion>
+ yönergelerinin önüne "!" konularak olumsuz koÅullar için uygulanabilir.
+ Ayrıca, bu bölümler daha karmaÅık sınırlamalar elde etmek amacıyla bir
+ diÄerinin içinde kullanılabilirler.
En sık kullanılan yapılandırma bölümü taÅıyıcıları dosya sistemindeki
-veya site alanındaki belli yerlerin yapılandırmalarını deÄiÅtirmekte
-kullanılanlardır. Ãncelikle, bu ikisi arasındaki farkları bilmek önemlidir.
-Dosya sistemi disklerinizin iÅletim sistemi tarafından size gösterilen
-halidir. ÃrneÄin, öntanımlı kurulumda Apache, Unix sistemlerinde
-/usr/local/apache2 altındayken Windows sistemlerinde
-"c:/Program Files/Apache Group/Apache2" altındadır.
-(Bilgi: Windows için bile, Apacheâde dosya yolu belirtilirken
-tersbölü deÄil normal bölü karakterleri kullanılır.) Site alanı
-ise sunucu tarafından istemciye sunulan dizin aÄacıdır. Yani, site
-alanı içindeki /dir/ dizini, Apacheânin Unix üzerinde
-dosya sistemine öntanımlı olarak kurulduÄu yer göz önüne alınarak,
-dosya sistemindeki /usr/local/apache2/htdocs/dir/
-dizinine karÅılıktır. Site sayfaları veritabanlarından veya baÅka yerlerden
-devingen olarak üretilebildiÄinden site alanlarının doÄrudan dosya
-sistemine eÅlenmesi gerekli deÄildir.
<Directory>
-ve <Files> taÅıyıcıları,
-düzenli ifade karÅılıkları ile beraber,
-yönergeleri dosya sisteminin parçalarına uygularlar. Bir <Directory> bölümü içindeki
-yönergeler belli bir dosya sistemi dizinine ve onun alt dizinlerine
-uygulanır. Aynı etki .htaccess dosyaları
-kullanılarak da saÄlanabilir. ÃrneÄin aÅaÄıdaki yapılandırmada,
-/var/web/dir1 dizini ve alt dizinlerinde dizin içeriÄinin
-listelenmesi etkin kılınmaktadır.
-<Directory /var/web/dir1>
-
- Options +Indexes
-
-</Directory>
-
Bir <Files> bölümü
-içindeki yönergeler, hangi dizinde bulunduÄuna bakılmaksızın ismi belirtilen
-dosyalara uygulanır. ÃrneÄin, aÅaÄıdaki yapılandırma yönergeleri yapılandırma
-dosyasının ana bölümüne yerleÅtirildiÄi takdirde gizli.html
-isimli dosyalara nerede bulunursa bulunsun eriÅime izin vermeyecektir.
-<Files gizli.html>
-
-Order allow,deny
-Deny from all
-
-</Files>
-
Dosya sisteminin belli bir yerindeki belli dosyalarla ilgili yaptırımlar
-için <Files> ve
-<Directory> bölümleri
-birlikte kullanılabilir. ÃrneÄin, aÅaÄıdaki yapılandırma
-/var/web/dir1/gizli.html,
-/var/web/dir1/subdir2/gizli.html,
-/var/web/dir1/subdir3/gizli.html ve
-/var/web/dir1/ altında bulunabilecek diÄer tüm
-gizli.html dosyalarına eriÅimi yasaklar.
-<Directory /var/web/dir1>
-
-<Files gizli.html>
-
-Order allow,deny
-Deny from all
-
-</Files>
-
-</Directory>
-
<Location> yönergesi
-ve yönergenin düzenli ifade karÅılıÄı
-site alanındaki içerik için yapılandırmayı deÄiÅtirir. ÃrneÄin aÅaÄıdaki
-yapılandırma, /gizli ile baÅlayan URL yollarına eriÅimi engeller.
-Ãzellikle, http://siteniz.mesela.dom/gizli,
-http://siteniz.mesela.dom/gizli123 ve
-http://siteniz.mesela.dom/gizli/dir/dosya.html
-istekleri yanında /gizli ile baÅlayan diÄer isteklere de
-uygulanır.
-<Location /gizli>
-
-Order Allow,Deny
-Deny from all
-
-</Location>
-
Dosya sistemi ile etkileÅime girmeyen herÅey için
-<Location>
-yönergesi gerekir. AÅaÄıdaki örnekte, belli bir URLânin
-mod_status modülü tarafından saÄlanan bir dahili
-Apache eylemcisine nasıl eÅlenebileceÄi gösterilmiÅtir. Bu örnek
-için dosya sisteminde server-status adında bir dosya
-veya dizin bulunması gerekli deÄildir.
-<Location /server-status>
-
-SetHandler server-status
-
-</Location>
-
<Directory>,
-<Files> ve
-<Location> yönergelerinde,
-Standart C kütüphanesindeki fnmatch iÅlevindeki gibi kabuk tarzı
-dosya ismi kalıpları kullanılabilir. "*" karakteri herhangi bir karakter dizisi
-ile eÅleÅirken "?" karakteri tek tek karakterlerle ve "[seq]" kalıbı
-ise seq içindeki her karakterle eÅleÅir. "/" karakteri her hangi bir
-kalıp karakteri ile eÅleÅmez; açıkça belirtilmesi gerekir.
Daha esnek bir eÅleÅmenin gerekli olduÄu durumlar için her taÅıyıcının bir
-düzenli ifade karÅılıÄı vardır. <DirectoryMatch>, <FilesMatch> ve <LocationMatch> yönergelerinde gerekli eÅleÅmeleri seçmek için
-perl uyumlu düzenli ifadelerin kullanımına
-izin verilir. Ayrıca, yönergelerin uygulanıÅının düzenli ifade bölümleri
-kullanılarak nasıl deÄiÅtirileceÄini öÄrenmek için, aÅaÄıda, yapılandırmanın
-katıÅtırılmasıyla ilgili bölüme de bakınız.
Tüm kullanıcı dizinlerine iliÅkin yapılandırmayı deÄiÅtirmek için dosya -ismi kalıpları Åöyle kullanılabilirdi:
- -
-<Directory /home/*/public_html>
-
-Options Indexes
-
-</Directory>
-
Düzenli ifade bölümleri kullanarak çeÅitli türlerdeki resim dosyalarına -eriÅimi bir defada yasaklayabiliriz:
-
-<FilesMatch \.(?i:gif|jpe?g|png)$>
-
-Order allow,deny
-Deny from all
-
-</FilesMatch>
-
Dosya sistemi taÅıyıcıları ile site alanı taÅıyıcıları arasında seçim
-yapmak aslında oldukça kolaydır. Dosya sisteminde bulunan nesnelere
-uygulanacak yönergeler için daima <Directory> veya <Files> kullanılır. Dosya sisteminde bulunmayan nesnelere
-(bir sayfanın bir veritabanı tarafından üretilmesi gibi) uygulanacak
-yönergeler için ise <Location> kullanılır.
Dosya sistemindeki nesnelere eriÅimi kısıtlarken asla
-<Location>
-kullanmamak önemlidir. Bunun sebebi farklı site alanı konumlarının
-(URLâler) aynı dosya sistemi konumuna eÅlenebilmesi dolayısıyla
-kısıtlamalarınızın etrafından dolaÅılabilmesine izin vermesidir.
-ÃrneÄin, aÅaÄıdaki yapılandırmayı ele alalım:
-<Location /dir/>
-
-Order allow,deny
-Deny from all
-
-</Location>
-
http://siteniz.mesela.dom/dir/ için bir istek yapılmıÅsa
-bu doÄru çalıÅacaktır. Fakat dosya sistemi harf büyüklüÄüne duyarsızsa
-ne olacak? Kısıtlamanız, istek http://siteniz.mesela.dom/DIR/
-Åeklinde yapılarak kolayca geçersiz kılınabilir. Halbuki <Directory> yönergesi isteÄin
-nasıl yapıldıÄına bakılmaksızın bu konumdan sunulan her türlü içeriÄe
-uygulanacaktı. (Dosya sistemi baÄlarıyla bu da aÅılabilir. Sembolik
-baÄlar kullanılarak aynı dizin dosya sisteminin bir çok yerine
-yerleÅtirilebilir. <Directory> yönergesi dosya yolunu sıfırlamaksızın sembolik
-baÄları izleyecektir. Bu bakımdan, en yüksek seviyede güvenlik için uygun
-Options yönergesi ile sembolik baÄların
-izlenmesi devredıÅı bırakılabilir.)
Belki de siz sırf harf büyüklüÄüne duyarlı bir dosya sistemi kullanıyorsunuz
-diye böyle uygulamalara ihtiyacınız olmadıÄını düÅünüyor olabilirsiniz, fakat
-aynı site alanını çok sayıda dosya sistemi konumuna eÅleyecek daha bir sürü
-yol bulunduÄunu unutmayınız. Bu bakımdan dosya sisteminde yapacaÄınız
-kısıtlamalarda daima dosya sistemi taÅıyıcılarını kullanmalısınız.
-Bununla birlikte bu kuralın da bir istisnası vardır. Yapılandırma
-kısıtlamalarının bir <Location/> bölümü içine koyulması,
-bu bölüme konan yönergelerin etki alanının belli bir URL ile sınırlı
-olmaması nedeniyle mükemmelen güvenlidir.
En sık kullanılan yapılandırma bölümü taÅıyıcıları dosya sistemindeki
+ veya site alanındaki belli yerlerin yapılandırmalarını deÄiÅtirmekte
+ kullanılanlardır. Ãncelikle, bu ikisi arasındaki farkları bilmek
+ önemlidir. Dosya sistemi disklerinizin iÅletim sistemi tarafından size
+ gösterilen halidir. ÃrneÄin, öntanımlı kurulumda Apache httpd, Unix
+ sistemlerinde /usr/local/apache2 altındayken Windows
+ sistemlerinde "c:/Program Files/Apache Group/Apache2"
+ altındadır. (Bilgi: Windows için bile, Apache httpd yapılandırma
+ dosyalarında dosya yolu belirtilirken tersbölü deÄil normal bölü
+ karakterleri kullanılır.) Site alanı ise sunucu tarafından istemciye
+ sunulan dizin aÄacıdır. Yani, site alanı içindeki /dir/
+ dizini, Apache httpdânin Unix üzerinde dosya sistemine öntanımlı olarak
+ kurulduÄu yer göz önüne alınarak, dosya sistemindeki
+ /usr/local/apache2/htdocs/dir/ dizinine karÅılıktır. Site
+ sayfaları veritabanlarından veya baÅka yerlerden devingen olarak
+ üretilebildiÄinden site alanlarının doÄrudan dosya sistemine eÅlenmesi
+ gerekli deÄildir.
<Directory>
+ ve <Files>
+ taÅıyıcıları, düzenli ifade karÅılıkları
+ ile beraber, yönergeleri dosya sisteminin parçalarına uygularlar. Bir
+ <Directory> bölümü
+ içindeki yönergeler belli bir dosya sistemi dizinine ve onun alt
+ dizinlerine uygulanır. Aynı etki .htaccess
+ dosyaları kullanılarak da saÄlanabilir. ÃrneÄin aÅaÄıdaki
+ yapılandırmada, /var/web/dir1 dizini ve alt dizinlerinde
+ dizin içeriÄinin listelenmesi etkin kılınmaktadır.
+ <Directory /var/web/dir1>
+
+ Options +Indexes
+
+ </Directory>
+
Bir <Files> bölümü
+ içindeki yönergeler, hangi dizinde bulunduÄuna bakılmaksızın ismi
+ belirtilen dosyalara uygulanır. ÃrneÄin, aÅaÄıdaki yapılandırma
+ yönergeleri yapılandırma dosyasının ana bölümüne yerleÅtirildiÄi takdirde
+ gizli.html isimli dosyalara nerede bulunursa bulunsun
+ eriÅime izin vermeyecektir.
+ <Files gizli.html>
+
+ Order allow,deny
+ Deny from all
+
+ </Files>
+
Dosya sisteminin belli bir yerindeki belli dosyalarla ilgili yaptırımlar
+ için <Files> ve
+ <Directory> bölümleri
+ birlikte kullanılabilir. ÃrneÄin, aÅaÄıdaki yapılandırma
+ /var/web/dir1/gizli.html,
+ /var/web/dir1/subdir2/gizli.html,
+ /var/web/dir1/subdir3/gizli.html ve
+ /var/web/dir1/ altında bulunabilecek diÄer tüm
+ gizli.html dosyalarına eriÅimi yasaklar.
+ <Directory /var/web/dir1>
+
+ <Files gizli.html>
+
+ Order allow,deny
+ Deny from all
+
+ </Files>
+
+ </Directory>
+
<Location> yönergesi
+ ve yönergenin düzenli ifade karÅılıÄı
+ site alanındaki içerik için yapılandırmayı deÄiÅtirir. ÃrneÄin aÅaÄıdaki
+ yapılandırma, /gizli ile baÅlayan URL yollarına eriÅimi
+ engeller. Ãzellikle, http://siteniz.mesela.dom/gizli,
+ http://siteniz.mesela.dom/gizli123 ve
+ http://siteniz.mesela.dom/gizli/dir/dosya.html
+ istekleri yanında /gizli ile baÅlayan diÄer isteklere de
+ uygulanır.
+ <LocationMatch ^/gizli>
+
+ Order Allow,Deny
+ Deny from all
+
+ </LocationMatch>
+
Dosya sistemi ile etkileÅime girmeyen herÅey için
+ <Location>
+ yönergesi gerekir. AÅaÄıdaki örnekte, belli bir URLânin
+ mod_status modülü tarafından saÄlanan bir dahili
+ Apache eylemcisine nasıl eÅlenebileceÄi gösterilmiÅtir. Bu örnek
+ için dosya sisteminde server-status adında bir dosya
+ veya dizin bulunması gerekli deÄildir.
+ <Location /server-status>
+
+ SetHandler server-status
+
+ </Location>
+
Belli bölümler ve yönergeler deÄerlendirilirken çakıÅan iki URL bir URL
+ olarak dikkate alınır. <Location> yönergesi için bu Åöyle olurdu:
+ <Location /foo>
+ </Location>
+ <Location /foo/bar>
+ </Location>
+
DiÄer yandan <Takma
+ adlar> tam tersi eÅlenir:
+ Alias /foo/bar /srv/www/uncommon/bar
+ Alias /foo /srv/www/common/foo
+
Aynısı ProxyPass
+ yönergeleri için de geçerlidir:
+ ProxyPass /special-area http://special.example.com smax=5 max=10
+ ProxyPass / balancer://mycluster/ stickysession=JSESSIONID|jsessionid nofailover=On
+
<Directory>,
+ <Files> ve
+ <Location>
+ yönergelerinde, Standart C kütüphanesindeki fnmatch
+ iÅlevindeki gibi kabuk tarzı dosya ismi kalıpları kullanılabilir. "*"
+ karakteri herhangi bir karakter dizisi ile eÅleÅirken "?" karakteri tek
+ tek karakterlerle ve "[seq]" kalıbı ise seq içindeki
+ her karakterle eÅleÅir. "/" karakteri her hangi bir kalıp karakteri ile
+ eÅleÅmez; açıkça belirtilmesi gerekir.
Daha esnek bir eÅleÅmenin gerekli olduÄu durumlar için her taÅıyıcının
+ bir düzenli ifade karÅılıÄı vardır. <DirectoryMatch>, <FilesMatch> ve <LocationMatch> yönergelerinde gerekli
+ eÅleÅmeleri seçmek için perl uyumlu düzenli
+ ifadelerin kullanımına izin verilir. Ayrıca, yönergelerin
+ uygulanıÅının düzenli ifade bölümleri kullanılarak nasıl
+ deÄiÅtirileceÄini öÄrenmek için, aÅaÄıda, yapılandırmanın
+ katıÅtırılmasıyla ilgili bölüme de bakınız.
Tüm kullanıcı dizinlerine iliÅkin yapılandırmayı deÄiÅtirmek için dosya + ismi kalıpları Åöyle kullanılabilirdi:
+ +
+ <Directory /home/*/public_html>
+
+ Options Indexes
+
+ </Directory>
+
Düzenli ifade bölümleri kullanarak çeÅitli türlerdeki resim dosyalarına + eriÅimi bir defada yasaklayabiliriz:
+ +
+ <FilesMatch \.(?i:gif|jpe?g|png)$>
+
+ Order allow,deny
+ Deny from all
+
+ </FilesMatch>
+
<If> yönergesi bir
+ mantıksal ifade olarak belirtilebilen bir kurala baÄlı olarak
+ yapılandırmayı deÄiÅtirebilir. ÃrneÄin, aÅaÄıdaki yapılandırmada,
+ HTTP Referer baÅlıÄı "http://www.example.com/" ile
+ baÅlamıyorsa eriÅimi yasaklar.
+ <If "!(%{HTTP_REFERER} -strmatch 'http://www.example.com/*')">
+
+ Require all denied
+
+ </If>
+
Dosya sistemi taÅıyıcıları ile site alanı taÅıyıcıları arasında seçim
+ yapmak aslında oldukça kolaydır. Dosya sisteminde bulunan nesnelere
+ uygulanacak yönergeler için daima <Directory> veya <Files> kullanılır. Dosya sisteminde bulunmayan nesnelere
+ (bir sayfanın bir veritabanı tarafından üretilmesi gibi) uygulanacak
+ yönergeler için ise <Location> kullanılır.
Dosya sistemindeki nesnelere eriÅimi kısıtlarken asla
+ <Location>
+ kullanmamak önemlidir. Bunun sebebi farklı site alanı konumlarının
+ (URLâler) aynı dosya sistemi konumuna eÅlenebilmesi dolayısıyla
+ kısıtlamalarınızın etrafından dolaÅılabilmesine izin vermesidir.
+ ÃrneÄin, aÅaÄıdaki yapılandırmayı ele alalım:
+ <Location /dir/>
+
+ Order allow,deny
+ Deny from all
+
+ </Location>
+
http://siteniz.mesela.dom/dir/ için bir istek yapılmıÅsa
+ bu doÄru çalıÅacaktır. Fakat dosya sistemi harf büyüklüÄüne duyarsızsa
+ ne olacak? Kısıtlamanız, istek
+ http://siteniz.mesela.dom/DIR/
+ Åeklinde yapılarak kolayca geçersiz kılınabilir. Halbuki <Directory> yönergesi isteÄin
+ nasıl yapıldıÄına bakılmaksızın bu konumdan sunulan her türlü içeriÄe
+ uygulanacaktı. (Dosya sistemi baÄlarıyla bu da aÅılabilir. Sembolik
+ baÄlar kullanılarak aynı dizin dosya sisteminin bir çok yerine
+ yerleÅtirilebilir. <Directory> yönergesi dosya yolunu sıfırlamaksızın sembolik
+ baÄları izleyecektir. Bu bakımdan, en yüksek seviyede güvenlik için uygun
+ Options yönergesi ile sembolik
+ baÄların izlenmesi devredıÅı bırakılabilir.)
Belki de siz sırf harf büyüklüÄüne duyarlı bir dosya sistemi
+ kullanıyorsunuz diye böyle uygulamalara ihtiyacınız olmadıÄını düÅünüyor
+ olabilirsiniz, fakat aynı site alanını çok sayıda dosya sistemi konumuna
+ eÅleyecek daha bir sürü yol bulunduÄunu unutmayınız. Bu bakımdan dosya
+ sisteminde yapacaÄınız kısıtlamalarda daima dosya sistemi taÅıyıcılarını
+ kullanmalısınız. Bununla birlikte bu kuralın da bir istisnası vardır.
+ Yapılandırma kısıtlamalarının bir <Location/> bölümü
+ içine koyulması, bu bölüme konan yönergelerin etki alanının belli bir URL
+ ile sınırlı olmaması nedeniyle mükemmelen güvenlidir.
Bazı bölüm türleri baÅka bölüm türlerinin içinde olabilir. Bir yandan,
+ <Files> bölümü
+ <Directory> bölümünün
+ içinde bulunabilirken diÄer yandan bir <If> bölümü <Directory>, <Location> ve <Files> bölümlerinde bulunabilir.
+ Bu bölümlerin düzenli ifadeli türevleri de benzer tarzda davranır.
İç içe bölümler, aynı türdeki iç içe olmayan bölümlerin sonrasına + yerleÅtirilir.
+<VirtualHost>
-taÅıyıcısının içinde belli bir konaÄa uygulanan yönergeler bulunur.
-Aynı makinede çok sayıda konaÄı farklı yapılandırmalarla sunuyorsanız
-bu taÅıyıcı çok iÅinize yarar. Daha fazla bilgi için
-Sanal Konak Belgeleri bölümüne bakınız.
<VirtualHost>
+ taÅıyıcısının içinde belli bir konaÄa uygulanan yönergeler bulunur.
+ Aynı makinede çok sayıda konaÄı farklı yapılandırmalarla sunuyorsanız
+ bu taÅıyıcı çok iÅinize yarar. Daha fazla bilgi için
+ Sanal Konak Belgeleri bölümüne bakınız.
<Proxy>
-ve <ProxyMatch>
-taÅıyıcıları, sadece belli bir URL ile eÅleÅen mod_proxy
-vekil sunucusu üzerinden eriÅilen sitelere uygulanan yapılandırma yönergelerini
-bulundururlar. ÃrneÄin aÅaÄıdaki yapılandırma cnn.com sitesine
-eriÅim için vekil sunucunun kullanılmasını engelleyecektir.
-<Proxy http://cnn.com/*>
-
-Order allow,deny
-Deny from all
-
-</Proxy>
-
<Proxy>
+ ve <ProxyMatch>
+ taÅıyıcıları, sadece belli bir URL ile eÅleÅen mod_proxy
+ vekil sunucusu üzerinden eriÅilen sitelere uygulanan yapılandırma
+ yönergelerini bulundururlar. ÃrneÄin aÅaÄıdaki yapılandırma
+ example.com sitesine eriÅim için vekil sunucunun
+ kullanılmasını engelleyecektir.
+ <Proxy http://example.com/*>
+
+ Order allow,deny
+ Deny from all
+
+ </Proxy>
+
Hangi yönergelere hangi yapılandırma bölümlerinde izin verildiÄini
-öÄrenmek için yönerge baÄlamına bakınız.
-<Directory> bölümlerinde
-izin verilen herÅeye sözdizimsel olarak ayrıca
-<DirectoryMatch>,
-<Files>,
-<FilesMatch>,
-<Location>,
-<LocationMatch>,
-<Proxy>
-ve <ProxyMatch>
-bölümlerinde de izin verilir. Yine de bazı istisnai durumlar mevcuttur:
AllowOverride yönergesi sadece
-<Directory> bölümlerinde çalıÅır.Options yönergesinin
-FollowSymLinks ve SymLinksIfOwnerMatch
-seçenekleri sadece <Directory>
-bölümlerinde veya .htaccess dosyalarında çalıÅır.Options yönergesi
-<Files> ve
-<FilesMatch>
-bölümlerinde kullanılamaz.Hangi yönergelere hangi yapılandırma bölümlerinde izin verildiÄini
+ öÄrenmek için yönerge baÄlamına bakınız. <Directory> bölümlerinde
+ izin verilen herÅeye sözdizimsel olarak ayrıca
+ <DirectoryMatch>,
+ <Files>,
+ <FilesMatch>,
+ <Location>,
+ <LocationMatch>,
+ <Proxy>
+ ve <ProxyMatch>
+ bölümlerinde de izin verilir. Yine de bazı istisnai durumlar
+ mevcuttur:
AllowOverride yönergesi sadece
+ <Directory>
+ bölümlerinde çalıÅır.Options yönergesinin
+ FollowSymLinks ve SymLinksIfOwnerMatch
+ seçenekleri sadece <Directory> bölümlerinde veya .htaccess
+ dosyalarında çalıÅır.Options yönergesi
+ <Files> ve
+ <FilesMatch>
+ bölümlerinde kullanılamaz.Yapılandırma bölümleri belli bir sıra ile uygulanır. Yapılandırma -yönergelerinin yorumlanıÅı üzerinde önemli etkilere sahip olabilmesi -nedeniyle neyin ne zaman çalıÅtıÄını anlamak çok önemlidir.
+Yapılandırma bölümleri belli bir sıra ile uygulanır. Yapılandırma + yönergelerinin yorumlanıÅı üzerinde önemli etkilere sahip olabilmesi + nedeniyle neyin ne zaman çalıÅtıÄını anlamak çok önemlidir.
Yapılandırma bölümlerinin katıÅtırılma sırası Åöyledir:
<Directory> (düzenli ifadeler hariç)
- ve .htaccess aynı anda iÅleme sokulur
- (.htaccess ile eÄer izin verilmiÅse <Directory> içindeki bazı
+ ve .htaccess aynı anda iÅleme sokulur
+ (.htaccess ile eÄer izin verilmiÅse <Directory> içindeki bazı
yönergeler geçersiz kılınabileceÄi için).<DirectoryMatch>
(ve <Directory ~>).<Files> ve <FilesMatch> aynı anda iÅleme sokulur.<Files> ve
+ <FilesMatch> aynı anda
+ iÅleme sokulur.<Location>
- ve <LocationMatch>
+ ve <LocationMatch>
aynı anda iÅleme sokulur.<Directory>
- bölümündekiler hariç, her grup, yapılandırma dosyasında bulundukları
- sıraya göre iÅleme sokulurlar. Yukarıda 1. grup olan <Directory> bölümü en kısa dizin
- elemanından en uzun dizin elemanına doÄru iÅleme sokulur. Yani, örneÄin,
- <Directory /var/web/dir> bölümü <Directory
- /var/web/dir/subdir> bölümünden önce iÅleme sokulacaktır. EÄer
- aynı uzunlukta çok sayıda dizin varsa <Directory> bölümleri yapılandırma dosyasında
- bulundukları sıraya göre iÅleme sokulurlar. Include yönergeleri ile yapılandırmaya dahil
- edilen dosyaların içerikleri Include
- yönergesinin bulunduÄu yere konulduktan sonra iÅleme sokulurlar.
<VirtualHost>
- bölümlerinin içindeki bölümler, sanal konak tanımı dıÅındaki karÅılıklarından
- sonra uygulanırlar.
İstek mod_proxy tarafından sunulduÄu takdirde,
- <Proxy> taÅıyıcısı
- iÅlem sırasında <Directory>
- taÅıyıcısının yerini alır.
Sonraki bölümler öncekileri geçersiz kılmak üzere iÅleme alınırlar.
- -Aliases ve
- DocumentRoots, URLâleri dosya isimlerine eÅlemek için
- kullanılırken) hemen önce uygulanan bir
- <Location>/<LocationMatch> dizisi
- vardır. Bu dizinin sonuçları isim dönüÅüm aÅaması tamamlandıktan sonra
- tamamen elden çıkarılır.
-AÅaÄıdaki yapay örnekte katıÅtırma sırası gösterilmiÅtir. Hepsinin aynı -isteÄe uygulandıÄı varsayımıyla, bu örnekteki yönergeler A > B > C > D > -E sırasıyla uygulanacaktır.
- -
-<Location />
-E
-</Location>
-
-<Files f.html>
-D
-</Files>
-
-<VirtualHost *>
-<Directory /a/b>
-B
-</Directory>
-</VirtualHost>
-
-<DirectoryMatch "^.*b$">
-C
-</DirectoryMatch>
-
-<Directory /a/b>
-A
-</Directory>
-
-
Daha somut bir örnek olarak aÅaÄıdakini ele alalım. <Directory> bölümlerindeki eriÅim sınırlamaları ne
-olursa olsun <Location>
-bölümü son olarak deÄerlendirmeye alınacak ve sunucuya sınırsız eriÅim verecektir.
-BaÅka bir deyiÅle, katıÅtırma sırası önemlidir, bu nedenle dikkatli olmalısınız!
-<Location />
-
- Order deny,allow
- Allow from all
-
-</Location>
-
-# Alooo! Bu <Directory> bölümünün hiçbir hükmü yok.
-<Directory />
-
- Order allow,deny
- Allow from all
- Deny from kkadam.mesela.dom
-
-</Directory>
-
<If>
+ <Directory>
+ bölümündekiler hariç, her grup, yapılandırma dosyasında bulundukları
+ sıraya göre iÅleme sokulurlar. Yukarıda 1. grup olan <Directory> bölümü en kısa dizin
+ elemanından en uzun dizin elemanına doÄru iÅleme sokulur. Yani, örneÄin,
+ <Directory /var/web/dir> bölümü <Directory
+ /var/web/dir/subdir> bölümünden önce iÅleme sokulacaktır. EÄer
+ aynı uzunlukta çok sayıda dizin varsa <Directory> bölümleri yapılandırma dosyasında
+ bulundukları sıraya göre iÅleme sokulurlar. Include yönergeleri ile yapılandırmaya dahil
+ edilen dosyaların içerikleri Include
+ yönergesinin bulunduÄu yere konulduktan sonra iÅleme sokulurlar.
<VirtualHost>
+ bölümlerinin içindeki bölümler, sanal konak tanımı dıÅındaki
+ karÅılıklarından sonra uygulanırlar.
İstek mod_proxy tarafından sunulduÄu takdirde,
+ <Proxy> taÅıyıcısı
+ iÅlem sırasında <Directory> taÅıyıcısının yerini alır.
Sonraki bölümler öncekileri geçersiz kılmak üzere iÅleme alınırlarsa da + her modül bu geçersiz kılmaya sebep olan formu yorumlamaktan sorumludur. + Belli bir modülülün yönergeleri bulunan sonraki yapılandırma bölümleri, + bazı yönergelerin, tüm yönergelerin veya modül yapılandırmasının + tamamının sonraki baÄlamda açıkça listelenmiÅ modül öntanımlıları ve + yönergelerle bir kavramsal "katıÅtırmasına" sebep olabilir.
+ +Aliases ve
+ DocumentRoots, URLâleri dosya isimlerine eÅlemek için
+ kullanılırken) hemen önce uygulanan bir
+ <Location>/<LocationMatch> dizisi
+ vardır. Bu dizinin sonuçları isim dönüÅüm aÅaması tamamlandıktan sonra
+ tamamen elden çıkarılır.
+ AÅaÄıdaki yapay örnekte katıÅtırma sırası gösterilmiÅtir. Hepsinin aynı + isteÄe uygulandıÄı varsayımıyla, bu örnekteki yönergeler A > B > C + > D > E sırasıyla uygulanacaktır.
+ +
+ <Location />
+ E
+ </Location>
+
+ <Files f.html>
+ D
+ </Files>
+
+ <VirtualHost *>
+ <Directory /a/b>
+ B
+ </Directory>
+ </VirtualHost>
+
+ <DirectoryMatch "^.*b$">
+ C
+ </DirectoryMatch>
+
+ <Directory /a/b>
+ A
+ </Directory>
+
+
Daha somut bir örnek olarak aÅaÄıdakini ele alalım.
+ <Directory>
+ bölümlerindeki eriÅim sınırlamaları ne olursa olsun <Location> bölümü son olarak
+ deÄerlendirmeye alınacak ve sunucuya sınırsız eriÅim verecektir.
+ BaÅka bir deyiÅle, katıÅtırma sırası önemlidir, bu nedenle dikkatli
+ olmalısınız!
+ <Location />
+
+ Order deny,allow
+ Allow from all
+
+ </Location>
+
+ # Alooo! Bu <Directory> bölümünün hiçbir hükmü yok.
+ <Directory />
+
+ Order allow,deny
+ Allow from all
+ Deny from kkadam.mesela.dom
+
+ </Directory>
+
Bu belgede core modülü ile saÄlanan ve sunucunun temel
-iÅlemlerini yapılandırmakta kullanılan yönergelerden bazıları açıklanmıÅtır.
Bu belgede core modülü ile saÄlanan ve sunucunun temel
+ iÅlemlerini yapılandırmakta kullanılan yönergelerden bazıları
+ açıklanmıÅtır.
| İlgili Modüller | İlgili Yönergeler |
|---|---|
| İlgili Modüller | İlgili Yönergeler |
|---|---|
Bu yönergeler Apacheânin doÄru iÅlem yapması için gereksinim duyduÄu - çeÅitli dosyaların yerlerini belirlerler. Bölü çizgisi (/) ile +
Bu yönergeler Apache httpdânin doÄru iÅlem yapması için gereksinim
+ duyduÄu çeÅitli dosyaların yerlerini belirlerler. Bölü çizgisi (/) ile
baÅlamayan dosya yolları kullanıldıÄında bu dosyaların yerlerinin
ServerRoot yönergesinde belirtilen
dizine göre belirtildiÄi varsayılır; root olmayan kullanıcılar
@@ -76,12 +77,12 @@ iÅlemlerini yapılandırmakta kullanılan yönergelerden bazıları açıklanm
| İlgili Modüller | İlgili Yönergeler |
|---|---|
LimitRequest* yönergeleri, Apacheânin istemcilerden gelen
- istekleri okumak için kullanacaÄı özkaynakların miktarları ile ilgili
- sınırlamalar koymak için kullanılırlar. Bu deÄerleri sınırlamak
+
LimitRequest* yönergeleri, Apache httpdânin istemcilerden
+ gelen istekleri okumak için kullanacaÄı özkaynakların miktarları ile
+ ilgili sınırlamalar koymak için kullanılırlar. Bu deÄerleri sınırlamak
suretiyle bazı hizmet reddi saldırılarının etkileri azaltılabilir.
RLimit* yönergeleri ise Apacheânin çocuk süreçleri
+
RLimit* yönergeleri ise Apache httpdânin çocuk süreçleri
tarafından çatallanabilen özkaynakların miktarlarını sınırlamakta
kullanılırlar. Ãzellikle de CGI betikleri ve SSI çalıÅtırma komutları
tarafından kullanılan özkaynakları denetlemekte kullanılırlar.
ThreadStackSize yönergesi
bazı platformlarda yıÄıt boyutunu denetim altında tutmak için
kullanılır.
| İlgili Modüller | İlgili Yönergeler |
|---|---|
Mutex yönergesi, APR'nin
+ öntanımlı seçimi ile ilgili iÅlevsel ve baÅarımsal sorunlarına çare
+ bulmada ilgili gerçeklenimi mutex'ler için deÄiÅtirmekte
+ kullanılabilir.
Mevcut Diller: en |
diff --git a/docs/manual/server-wide.xml.meta b/docs/manual/server-wide.xml.meta
index 7833e99a13d..2b620bbbf81 100644
--- a/docs/manual/server-wide.xml.meta
+++ b/docs/manual/server-wide.xml.meta
@@ -11,6 +11,6 @@
Apache HTTP Sunucusunun mod_ssl modülü, Güvenli Soketler
Katmanı (SSL) ve Aktarım Katmanı GüvenliÄi (TLS) protokollerinin
@@ -39,9 +38,9 @@