From: Nilgun Belma Buguner Date: Thu, 5 Apr 2012 16:03:53 +0000 (+0000) Subject: update transformations. X-Git-Tag: 2.5.0-alpha~7248 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9b2a06f8f26a827323e60950cf8135b51b8d0cd7;p=apache update transformations. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1309917 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/docs/manual/bind.html.tr.utf8 b/docs/manual/bind.html.tr.utf8 index 6cbe9ce7e8..be6d5802f3 100644 --- a/docs/manual/bind.html.tr.utf8 +++ b/docs/manual/bind.html.tr.utf8 @@ -25,7 +25,6 @@  ko  |  tr 

-
Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.

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 bc9555a239..5a7606ce3f 100644 --- a/docs/manual/bind.xml.meta +++ b/docs/manual/bind.xml.meta @@ -12,6 +12,6 @@ fr ja ko - tr + tr diff --git a/docs/manual/caching.html.tr.utf8 b/docs/manual/caching.html.tr.utf8 index 0c829ad598..83b79c4cce 100644 --- a/docs/manual/caching.html.tr.utf8 +++ b/docs/manual/caching.html.tr.utf8 @@ -22,7 +22,6 @@  fr  |  tr 

-
Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.

Bu belge mod_cache, mod_cache_disk, mod_file_cache @@ -33,50 +32,53 @@ özelliklerinin nasıl kullanılacağı açıklanmıştır.

top

Giriş

-

Apache 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.

+ +
+
Üç durumlu RFC2616 HTTP önbelleklemesi
+
+ 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. +
+
İki durumlu anahtar/değer paylaşımlı nesne önbellekleme
+
+ Paylaşımlı nesne önbellek API'si + (socache) ve destek modülleri sunucu taraflı bir anahtar/değer + paylaşımlı nesne önbelleklemesi sağlar. Bu modüller SSL oturumları + ve kimlik doğrulama bilgileri gibi düşük seviyeli verileri + önbelleklemek için tasarlanmıştır. Destek modülleri verinin sunucu + tarafı bir paylaşımlı bellekte veya veri merkezi tarafı memcache + veya distcache gibi bir önbellekte saklanmasını mümkün kılar. +
+
Uzmanlaşmış dosya önbellekleme
+
+ 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 @@

top
-

Önbelleklemeye Bir Bakış

+

Üç durumlu RFC2616 HTTP önbelleklemesi

- - -

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.

+ + +

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:

+ +
+
Taze
+
+ İçerik yeteri kadar yeni (tazelik ömründen daha genç) + ise taze sayılır. Bir HTTP önbelleği böyle bir içeriği + özgün sunucuya birşey sormadan sunabilir. +
+
Bayat
+
+

İç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.

+
+
Yok
+
+ Önbellekte yer kalmazsa yer açmak için içeriğin silinmesi seçenek + dahilindedir. İçerik taze olsun olmasın her zaman silinebilir. Önlem + olarak 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.

+ +

Sunucu ile etkileşim

+ -

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: +

+ +
+
Çabuk eylem aşaması
+
+

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.

+
+
Normal eylem aşaması
+
+

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.

+

Önbelleğin Hızlandırılması

-

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.

-

Zaman Aşımı Süreleri

+

Tazelik Ömrü

-

Ö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.

-

Şartlı İstekler için Özlü Kılavuz

-

Ö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).

+ Böylelikle, yerel içeriği bir değişiklik olmadığı takdirde önbellekten + sunmak daha hızlı olacaktır.

+ +

Ö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.

Neler Önbelleklenebilir?

-

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:

  1. Önbellekleme bu URL ile etkin kılınabilmelidir. CacheEnable ve CacheDisable yönergelerine bakınız.
  2. @@ -229,12 +304,10 @@
  3. İstek bir HTTP GET isteği olmalıdır.
  4. -
  5. İstek bir "Authorization:" başlığı içeriyorsa yanıt önbelleğe - alınmayacaktır.
  6. -
  7. Eğer yanıt bir "Authorization:" başlığı içeriyorsa ayrıca "Cache-Control:" başlığında da "s-maxage", "must-revalidate" veya - "public" değerlerinden birini içermelidir.
  8. + "public" değerlerinden birini içermelidir, aksi takdirde + önbelleklenmez.
  9. Eğer URL (GET yöntemi kullanan bir HTML formunun yaptığı gibi) bir sorgu dizgesi içeriyorsa yanıt, RFC2616’nın 13.9. bölümünde @@ -245,8 +318,8 @@
  10. 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.
  11. + başlıklarından birini veya "Cache-Control:" başlığının "max-age" veya + "s-maxage" yönergelerinden birini (en azından) içermesi gerekir.
  12. CacheStorePrivate yönergesinin kullanımını gerektiren bir durum olmadıkça yanıt @@ -265,26 +338,35 @@

    Neler Önbelleklenmemeli?

    -

    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.

    Değişken/Uzlaşımlı İçerik

    -

    "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.

    - -
top
-
-

Güvenlik Kaygıları

+

İç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.

-

Erişim Denetimi ve Yetkilendirme

+

Disk Üzerinde Önbellekleme

-

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.

- - -

Yerel İstismarcılar

- - -

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.

- - - -

Önbellek Zehirlenmeleri

- - -

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.

- -
top
-
-

Dosya Tanıtıcı Önbelleklemesi

- - - - -

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 ile

- - -

httpd’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.

- -
top
-
-

Sistem Belleğinde Önbellekleme

- - - - -

İç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.

- -

İşletim Sistemi Önbelleklemesi

- - -

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 ile

- - -

mod_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.

- -
top
-
-

Disk Üzerinde Önbellekleme

+

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 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.

-

Önbellekte Saklamanın Anlamı

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.

+ port ve varsa CGI argümanlarından başka 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.

+ + +
top
+
+

İki durumlu Anahtar/Değer Paylaşımlı Nesne Önbellekleme

+ + + + +

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_dbm
+
DBM tabanlı paylaşımlı nesne önbelleklemesi.
+
mod_socache_dc
+
Distcache tabanlı paylaşımlı nesne önbelleklemesi.
+
mod_socache_memcache
+
Memcache tabanlı paylaşımlı nesne önbelleklemesi.
+
mod_socache_shmcb
+
Paylaşımlı belleğe dayalı paylaşımlı nesne önbelleklemesi.
+
+ +

Kimlik Doğrulama Bilgilerinin Önbelleklenmesi

+ + + + +

mod_authn_socache modülü kimlik doğrulama araçlarının + yükünün hafifletilmesini, kimlik doğrulama sonucunun önbelleklenmesini + sağlar.

+ + +

SSL Oturumlarının Önbelleklenmesi

+ + + + +

mod_ssl modülü, oturum önbelleği ve önbellek + zımbalaması sağlamak için socache arayüzünü kullanır.

+ +
top
+
+

Uzmanlaşmış Dosya Önbellekleme

+ + +

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.

+ +

Dosya Tanıtıcı Önbelleklemesi

+ + +

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 ile

+ + +

httpd’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.

+ + + + +

Sistem Belleğinde Önbellekleme

+ + +

İç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.

+ +

İşletim Sistemi Önbelleklemesi

+ + +

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 ile

+ + +

mod_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.

+ + +
top
+
+

Güvenlik Kaygıları

+ + +

Erişim Denetimi ve Yetkilendirme

+ + +

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.

+ + +

Yerel İstismarcılar

+ + +

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.

+ + +

Önbellek Zehirlenmeleri

+ + +

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.

+ + +

Hizmet Reddi / Önbelleğin Engellenmesi

+ + +

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 22406e7caf..c6ba0165a9 100644 --- a/docs/manual/caching.xml.meta +++ b/docs/manual/caching.xml.meta @@ -9,6 +9,6 @@ en fr - tr + tr diff --git a/docs/manual/misc/perf-tuning.html.tr.utf8 b/docs/manual/misc/perf-tuning.html.tr.utf8 index 7cc1df93c9..e5b4423247 100644 --- a/docs/manual/misc/perf-tuning.html.tr.utf8 +++ b/docs/manual/misc/perf-tuning.html.tr.utf8 @@ -23,7 +23,6 @@  ko  |  tr 

-
Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.

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 flock
- -
-

Bu 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 fcntl
- -
-

Bu 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 a4ba1984eb..38baef0070 100644 --- a/docs/manual/misc/perf-tuning.xml.meta +++ b/docs/manual/misc/perf-tuning.xml.meta @@ -10,6 +10,6 @@ en fr ko - tr + tr diff --git a/docs/manual/misc/security_tips.html.tr.utf8 b/docs/manual/misc/security_tips.html.tr.utf8 index 4656d7d2ae..e736c30b99 100644 --- a/docs/manual/misc/security_tips.html.tr.utf8 +++ b/docs/manual/misc/security_tips.html.tr.utf8 @@ -23,7 +23,6 @@  ko  |  tr 

-
Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.

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ştirilmesi
  • top
    @@ -83,6 +83,10 @@ tedbirler alınmasını sağlayacak bazı yapılandırmaları vardır:

    top
    +
    +

    Yapılandırma bölümlerinin birleştirilmesi

    + + + +

    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 6fc5c16c26..621cad21f5 100644 --- a/docs/manual/misc/security_tips.xml.meta +++ b/docs/manual/misc/security_tips.xml.meta @@ -10,6 +10,6 @@ en fr ko - tr + tr diff --git a/docs/manual/mod/core.html.tr.utf8 b/docs/manual/mod/core.html.tr.utf8 index 2c11d09c05..150bff4fb1 100644 --- a/docs/manual/mod/core.html.tr.utf8 +++ b/docs/manual/mod/core.html.tr.utf8 @@ -1299,7 +1299,7 @@ için iptal edilmiştir. bir ileti de belirtilebilir. Örnekler:

    - 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.

    İ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:

    + adresleri köşeli ayraç içine alınır. IPv6 adresi kullanılan bir + örnek:

    <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>

    diff --git a/docs/manual/mod/mod_alias.html.tr.utf8 b/docs/manual/mod/mod_alias.html.tr.utf8 index ee618b10ad..5442362e33 100644 --- a/docs/manual/mod/mod_alias.html.tr.utf8 +++ b/docs/manual/mod/mod_alias.html.tr.utf8 @@ -27,7 +27,6 @@  ko  |  tr 

    -
    Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.
    @@ -110,8 +109,8 @@ eşlenmesini sağlar ve URL yönlendirmesi yapar.
    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.
    Durum:Temel
    - + @@ -128,11 +127,11 @@ eşlenmesini sağlar ve URL yönlendirmesi yapar. Alias /image /ftp/pub/image

    -

    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/
    -

    diye bir tanım yaparsanız /icons URL’si için bir - Alias kullanılmayacaktır.

    +

    diye bir tanım yaparsanız sona bir / ekleme ihtiyacından dolayı + /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>

    @@ -191,12 +190,59 @@ eşler. AliasMatch ^/icons(.*) /usr/local/apache/icons$1

    -

    Ayrıca, URL-yolu ile harf büyüklüğüne duyarsız - eşleşmeler sağlayacak düzenli ifadeler de kullanılabilir:

    +

    Düzenli ifadelerin tamamı + kullanılabilmektedir. Örneğin, 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.

    + +

    Başka bir deyişle, basitçe + 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.

    + +

    Örneğin aşağıdakini AliasMatch ile değiştirmek isteyelim:

    + +

    + Alias /image/ /ftp/pub/image/ +

    + +

    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:

    + +

    + AliasMatch /image/ /ftp/pub/image/ +

    + +

    Aynı etkiyi elde etmek için bu gerekiyor:

    + +

    + AliasMatch ^/image/(.*)$ /ftp/pub/image/$1 +

    + +

    Şüphesiz, 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 +

    +
    top
    @@ -219,7 +265,9 @@ yönlendirir.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.

    + 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

    -

    İstemcinin yaptığı http://mesela.dom/hizmet/fesmekan.txt +

    İstemcinin yaptığı 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.

    @@ -274,16 +326,17 @@ yönlendirir. belirtilmez. -

    Diğer durum kodları için 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 +

    Diğer durum kodları için 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

    @@ -309,9 +362,16 @@ yönlendirme gönderir. yazılabilir:

    - 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.

    + +
    top

    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

    - + +

    AliasMatch yönergesindeki gibi, düzenli + ifadelerin tamamı tüm güçleriyle kullanılabilmektedir. + Örneğin, 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.

    + +
    diff --git a/docs/manual/mod/mod_alias.xml.meta b/docs/manual/mod/mod_alias.xml.meta index 547a2db773..548584404b 100644 --- a/docs/manual/mod/mod_alias.xml.meta +++ b/docs/manual/mod/mod_alias.xml.meta @@ -11,6 +11,6 @@ fr ja ko - tr + tr diff --git a/docs/manual/mod/mod_autoindex.html.tr.utf8 b/docs/manual/mod/mod_autoindex.html.tr.utf8 index 0c9de7194d..8aca6b0cb1 100644 --- a/docs/manual/mod/mod_autoindex.html.tr.utf8 +++ b/docs/manual/mod/mod_autoindex.html.tr.utf8 @@ -27,7 +27,6 @@  ko  |  tr 

    -
    Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.
    Açıklama:URL’leri dosya sistemi konumlarıyla eşler.
    Sözdizimi:Alias URL-yolu -dosya-yolu|dizin-yolu
    Sözdizimi:Alias URL-yolu dosya-yolu | +dizin-yolu
    Bağlam:sunucu geneli, sanal konak
    Durum:Temel
    Modül:mod_alias
    @@ -38,9 +37,10 @@ yaptığı gibi dizin içeriğini listeler.

    Bir dizin içerik dosyası iki kaynaktan gelebilir:

      -
    • Kullanıcı tarafından yazılmış ve genellikle index.html - adında bir dosya olarak. Dosyanın ismi DirectoryIndex yönergesi ile belirlenir ve - mod_dir tarafından denetlenir.
    • +
    • Bu dizinde bulunan ve genellikle 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.
    • Kullanıcı tarafından böyle bir dosya sağlanmadığı takdirde dizin içerik listesini sunucu üretir. Diğer yönergeler bu listenin biçemini @@ -97,8 +97,9 @@ yaptığı gibi dizin içeriğini listeler.

      Sütun Sıralamada Sorgu Seçenekleri

      -

      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 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

      Normalde öntanımlı açıklama alanının genişliği 23 bayttır. IndexOptions SuppressIcon @@ -292,6 +294,15 @@ metni belirler. ekler. Böylece en fazla 55 karakterlik öntanımlı sütun genişliğine ulaşılabilir.

      +

      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, 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.

      +

      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 IndexOptions yönergesinin DescriptionWidth seçeneğinin açıklamasına bakınız.

      @@ -304,6 +315,14 @@ metni belirler. kalın gösterim listenin kalanına yayılabilir).

      +

      Yol bilgisi içeren değiştirgeler

      +

      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.

      +
      + +
      top

      AddIcon Yönergesi

      @@ -320,7 +339,8 @@ metni belirler.

      Yönerge, 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.

      @@ -331,10 +351,14 @@ metni belirler. uzantısı, dosya isminin bir kısmı, bir dosya ismi kalıbı veya tam yoluyla bir dosya ismi belirtilebilir.

      +

      ^^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 *~

      Mümkünse AddIcon yerine AddIconByType yönergesi tercih @@ -355,7 +379,7 @@ göre belirler.

    Açıklama:Unix ls veya Win32 dir kabuk komutunun yaptığı gibi dizin içeriğini listeler.
    Durum:Temel

    Yönerge, 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.

    @@ -364,7 +388,7 @@ göre belirler. gibi geçerli bir içerik kodlaması belirtilmelidir.

    Örnek

    - AddIconByEncoding /icons/compress.xbm x-compress + AddIconByEncoding /icons/compress.png x-compress

    @@ -383,7 +407,7 @@ belirler.

    Yönerge, 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.

    @@ -410,10 +434,11 @@ belirler.

    The 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.

    + bir göreli URL (% öncelemeli) veya tam nitelenmiş uzak bir URL + belirtir.

    Örnek

    - DefaultIcon /icon/unknown.xbm + DefaultIcon /icon/unknown.png

    @@ -474,6 +499,10 @@ belirler. istiyorsanız IndexOptions +SuppressHTMLPreamble ataması yapmanız gerekecektir.

    +

    Ayrıca bakınız:

    +
    top

    IndexHeadInsert 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 Durum:Temel @@ -514,23 +544,46 @@ belirler. öntanımlı olarak içinde bulunulan dizini (./) içerir.

    - IndexIgnore README .htaccess *.bak *~ + IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t

    +

    Düzenli İfadeler

    +

    Bu yönerge, <DirectoryMatch> gibidüzenli ifadeler içeren yapılandırma + bölümlerinde henüz çalışmamaktadır.

    +
    +
    top

    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|OFF
    Bağlam:sunucu geneli, sanal konak, dizin, .htaccess
    Geçersizleştirme:Indexes
    Durum:Temel
    Modül:mod_autoindex
    Uyumluluk:2.3.10 and later

    Bu yönergenin belgesi henüz Türkçeye çevrilmedi. - Lütfen İngilizce sürümüne bakınız.

    +Uyumluluk:Apache HTTP Sunucusunun 2.3.10 ve sonraki sürümlerinde kullanılabilmektedir. + +

    Bu yönerge, diğer yapılandırma bölümlerince bir şekilde miras alınmayan + ve 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> +

    + +

    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.

    + +
    top

    IndexOptions Yönergesi

    @@ -538,6 +591,7 @@ a directory + @@ -548,32 +602,34 @@ a directory belirtilebilir:

    -
    Charset=karakter-kümesi (Apache 2.0.61 - ve sonrası)
    +
    AddAltClass
    +
    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

    Dizin içerik listesi süslü olur.
    -
    FoldersFirst - (Apache 2.0.23 ve sonrası)
    +
    FoldersFirst
    Bu seçenek etkin kılındığında dizin içerik listesinde alt dizinler dosyalardan önce listelenir. Listelemede genel olarak iki bileşen @@ -609,14 +664,14 @@ a directory seçenek sadece FancyIndexing seçeneği etkinse etkili olacaktır.
    -
    HTMLTable - (Deneysel, Apache 2.0.23 ve sonrası)
    +
    HTMLTable
    -
    Bu deneysel seçenek FancyIndexing 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.
    IconsAreLinks
    @@ -630,8 +685,8 @@ a directory 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 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ı]
    @@ -640,8 +695,8 @@ a directory 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
    @@ -663,7 +718,7 @@ a directory

    Hiç belirtilmediğinde veya -NameWidth biçeminde belirtildiğinde mod_autoindex uygun genişliği kendisi - hesaplayacaktır.

    + hesaplayacaktır, fakat en fazla 20 karakter olabilir.

    NameWidth=n ile sütun genişliği n bayt genişlikte sabitlenir.

    @@ -674,8 +729,8 @@ a directory
    ScanHTMLTitles
    Bu seçenek süslü listeleme için HTML belgelerden sayfa başlığının - okunmasını sağlar. Dosya için AddDescription 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.
    ShowForbidden
    @@ -690,10 +745,7 @@ a directory başlıklarını sıralama için hiper bağ haline getirmeyecektir. Sütun başlıkları için öntanımlı davranış hiper bağ olmak olup bunlar seçilerek dizin listesinin o sütundaki değerlere göre sıralanması - sağlanır. Apache 2.0.23 öncesinde, bu seçenek ayrıca, sıralama - dizgesi için sorgu sözcüklerinin çözümlenmesini de iptal - ederdi. Bu davranış Apache 2.0.23’ten beri IndexOptions - IgnoreClient ile sağlanmaktadır. + sağlanır. Bu davranış IndexOptions IgnoreClient ile sağlanmaktadır.
    SuppressDescription
    @@ -714,10 +766,14 @@ a directory vs.) yerleştirir. Bu seçenek bu davranışı iptal ederek modülün dosya içeriğinin başlangıcına bir şey eklememesini sağlar. Bu durumda başlık dosyasının uygun HTML etiketlerini içermesi gerekir. Böyle bir başlık - dosyası yoksa normal olarak HTML başlangıç etiketleri üretilir. + dosyası yoksa normal olarak HTML başlangıç etiketleri üretilir. Eğer + bir ReadmeName 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ı)
    +
    Süslü dizin listesinde dosya simgelerinin gösterilmesini engeller. Son belirtim, süslü dizin listelemede kullanılan pre @@ -732,7 +788,7 @@ a directory engellenir.
    SuppressRules - (Apache 2.0.23 ve sonrası)
    +
    Dizin listelemede hr etiketinin kullanımını engeller. Son belirtim, süslü dizin listelemede kullanılan pre @@ -743,10 +799,11 @@ a directory
    SuppressSize
    -
    Süslü dizin listelemede dosya boyutunun gösterilmesi engellenir.
    +
    Süslü dizin listelemede dosya boyutunun gösterilmesi engellenir. +
    TrackModified - (Apache 2.0.23 ve sonrası)
    +
    Bu seçenek listelenen dizin için HTTP başlığında 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=MIME-türü
    + +
    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ı)
    +
    XHTML
    XHTML seçeneği mod_autoindex’in kodu HTML 3.2’ye değil XHTML 1.0’a uygun üretmesini sağlar.
    @@ -801,8 +866,8 @@ a directory
    + veya - Önekli Seçenekler
    -

    Apache 1.3.3’te IndexOptions yönergelerinin ele - alınışıyla ilgili önemil değişiklikler yapılmıştır. Bunlar:

    +

    Çok sayıda IndexOptions yönergesinin + işlenebileceğine dikkat edin.

    • Tek bir dizin için çok sayıda 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

      -

      Bunun net etkisi 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.

      +

      Bunun net etkisi + 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.

      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

      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.

      - -

      Dizin listesinin belli bir sırada gösterilmesini zorunlu kılmak için - yönergeyi SuppressColumnSorting sıralama seçeneği ile birlikte - belirtebilirsiniz; böylece, istemcinin farklı sıralamalara sahip içerik - isteğini engellemiş olursunuz.

      + 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.

      + +

      Sütunun tepesindeki sıralama bağını kaldırmak için + 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.

      top
      @@ -908,6 +978,31 @@ Name|Date|Size|Description IndexStyleSheet "/css/style.css"

      +

      Bu yönergenin 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ö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
    Durum:Temel
    + + + + + + + + + + + + + + + + +
    SınıfTanım
    tr.indexheadListe satırının başlığı
    th.indexcolicon and td.indexcoliconSimge sütunu
    th.indexcolname and td.indexcolnameDosya ismi sütunu
    th.indexcollastmod and td.indexcollastmodSon değişiklik sütunu
    th.indexcolsize and td.indexcolsizeDosya boyutu sütunu
    th.indexcoldesc and td.indexcoldescAçıklama sütunu
    tr.breakrowTablonun altınaki yatay çizgi
    tr.odd and tr.evenTek ve çift satırlar
    + +
    top

    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.

    + belirtilir. Eğer dosya ismi 2. örnekteki gibi bir bölü çizgisi ile + başlıyorsa 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 821a085c5c..29fe224509 100644 --- a/docs/manual/mod/mod_autoindex.xml.meta +++ b/docs/manual/mod/mod_autoindex.xml.meta @@ -11,6 +11,6 @@ fr ja ko - tr + tr diff --git a/docs/manual/mod/mod_dir.html.tr.utf8 b/docs/manual/mod/mod_dir.html.tr.utf8 index 55cf2005eb..9e6f88e750 100644 --- a/docs/manual/mod/mod_dir.html.tr.utf8 +++ b/docs/manual/mod/mod_dir.html.tr.utf8 @@ -27,7 +27,6 @@  ko  |  tr 

    -
    Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.
    @@ -48,11 +47,11 @@ kendiliğinden dizin içerik listesi üretimini tamamen iptal edebilirsiniz.

    -

    Sunucu 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 +

    Sunucu 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 @@
    top
    Açıklama:Bölü çizgisiyle biten yönlendirmeleri yapar ve dizin içeriği dosyalarını sunar.
    Durum:Temel
    Modül Betimleyici:dir_module
    - - -
    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 off
    Bağ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

    Bu yönergenin belgesi henüz Türkçeye çevrilmedi. - Lütfen İngilizce sürümüne bakınız.

    +Uyumluluk:Apache HTTP Sunucusunun 2.3.14 ve sonraki sürümlerinde + kullanılabilmektedir. + +

    Öntanımlı olarak, 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.

    + + +
    top

    DirectorySlash Yönergesi

    @@ -161,7 +174,9 @@

    Siz yine de bu etkiyi istemezseniz ve yukarıdaki sebepler de size uygun - değilse yönlendirmeyi şöyle kapatabilirsiniz:

    + değilse yönlendirmeyi aşağıdaki gibi kapatabilirsiniz. Ancak bunu + yaparken dikkatli olun, bununla ilgili bazı güvenlik sorunları olasılığı + vardır.

    # 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ı.

    +

    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.

    top
    @@ -202,7 +220,7 @@ Örnek:

    - FallbackResource not-404.php + FallbackResource /not-404.php

    Bu satırla, (mevcut dosyaları etkilemeden) mevcut olmayan dosyaların @@ -218,11 +236,23 @@ yapılandırma yeterli olmaktadır.

    - FallbackResource index.php + FallbackResource /index.php

    Resim, CSS dosyaları gibi mevcut dosyalar normal olarak sunulur.

    +

    http://example.com/blog/ gibi bir alt URI yerel-url + olarak sağlanır:

    +

    + + <Directory /web/example.com/htdocs/blog>
    + + FallbackResource /blog/index.php
    +
    + </Directory> +
    +

    +
    diff --git a/docs/manual/mod/mod_dir.xml.meta b/docs/manual/mod/mod_dir.xml.meta index e8a3ce0549..4d4a13ee23 100644 --- a/docs/manual/mod/mod_dir.xml.meta +++ b/docs/manual/mod/mod_dir.xml.meta @@ -11,6 +11,6 @@ fr ja ko - tr + tr diff --git a/docs/manual/mod/mod_env.html.tr.utf8 b/docs/manual/mod/mod_env.html.tr.utf8 index 322668046d..3176c9aff8 100644 --- a/docs/manual/mod/mod_env.html.tr.utf8 +++ b/docs/manual/mod/mod_env.html.tr.utf8 @@ -27,7 +27,6 @@  ko  |  tr 

    -
    Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.
    @@ -35,9 +34,12 @@ etmek için kullanılır.
    Açıklama:CGI betiklerine ve SSI sayfalarına aktarılan değişkenlere müdahale etmek için kullanılır.
    Durum:Temel
    Kaynak Dosyası:mod_env.c

    Özet

    -

    Bu modül CGI betiklerine ve SSI sayfalarına aktarılan ortama müdahale - etmeyi mümkün kılar. Ortam değişkenleri httpd süreci - başlatılırken kabuktan aktarılabilir. Bundan başka, yapılandırma +

    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 + 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:

    top
    @@ -62,8 +65,11 @@ etmek için kullanılır. 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.

    +

    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 httpd süreci + başlatılırken kabuğun işletim sistemi ortamından gelir.

    Örnek

    PassEnv LD_LIBRARY_PATH @@ -80,8 +86,9 @@ etmek için kullanılır. Durum:Temel Modül:mod_env -

    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.

    Örnek

    SetEnv SPECIAL_PATH /foo/bin @@ -90,12 +97,16 @@ etmek için kullanılır.

    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 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:

    +
    top

    UnsetEnv Yönergesi

    @@ -109,7 +120,7 @@ etmek için kullanılır. Modül:mod_env

    CGI betiklerine ve SSI sayfalarına bir daha aktarılmamak üzere bir - ortam değişkenini ortamdan siler.

    + dahili ortam değişkenini siler.

    Örnek

    UnsetEnv LD_LIBRARY_PATH diff --git a/docs/manual/mod/mod_env.xml.meta b/docs/manual/mod/mod_env.xml.meta index dfc9895f60..176418a697 100644 --- a/docs/manual/mod/mod_env.xml.meta +++ b/docs/manual/mod/mod_env.xml.meta @@ -11,6 +11,6 @@ fr ja ko - tr + tr diff --git a/docs/manual/mod/quickreference.html.tr.utf8 b/docs/manual/mod/quickreference.html.tr.utf8 index 5eb7b46595..d85cc7b064 100644 --- a/docs/manual/mod/quickreference.html.tr.utf8 +++ b/docs/manual/mod/quickreference.html.tr.utf8 @@ -105,8 +105,8 @@ responses from the server AddType media-type extension [extension] ...skdhTMaps the given filename extensions onto the specified content type -Alias URL-yolu -dosya-yolu|dizin-yoluskTURL’leri dosya sistemi konumlarıyla eşler. +Alias URL-yolu dosya-yolu | +dizin-yoluskTURL’leri dosya sistemi konumlarıyla eşler. AliasMatch düzenli-ifade dosya-yolu|dizin-yoluskTURL’leri dosya sistemi konumlarıyla düzenli ifadeleri kullanarak eşler. @@ -373,8 +373,8 @@ server disabled | yerel-url [yerel-url] ... index.html skdhTİstemci bir dizin istediğinde dizin içeriğini listeler. DirectoryIndexRedirect on | off | permanent | temp | seeother | -3xx-code - off skdhTConfigures an external redirect for directory indexes. +3xx-kodu + off skdhTDizin içerik listeleri için harici bir yönlendirme yapılandırır. <DirectoryMatch düzifd> ... </DirectoryMatch>skÇBir düzenli ifade ile eşleşen dosya sistemi dizinlerinin içeriklerine uygulanacak bir yönerge grubunu sarmalar. @@ -472,10 +472,10 @@ an imagemap IncludeOptional dosya-yolu|dizin-yolu|jokerskdÇDiğer yapılandırma dosyalarının sunucu yapılandırma dosyasına dahil edilmesini sağlar IndexHeadInsert "imlenim ..."skdhTBir dizin sayfasının HEAD bölümüne metin yerleştirir. -IndexIgnore dosya [dosya] ...skdhTDizin içerik listesinden gizlenecek dosyaların listesi belirtilir. +IndexIgnore dosya [dosya] ... "." skdhTDizin içerik listesinden gizlenecek dosyaların listesi belirtilir. + +IndexIgnoreReset ON|OFFskdhTBir dizini listelerken gizlenecek dosyalar listesini boşaltır -IndexIgnoreReset ON|OFFskdhTEmpties the list of files to hide when listing -a directory IndexOptions [+|-]seçenek [[+|-]seçenek] ...skdhTDizin içerik listesini yapılandıracak seçenekler belirtilir. diff --git a/docs/manual/rewrite/index.html.tr.utf8 b/docs/manual/rewrite/index.html.tr.utf8 index 8fb9752e64..c7e5a2b483 100644 --- a/docs/manual/rewrite/index.html.tr.utf8 +++ b/docs/manual/rewrite/index.html.tr.utf8 @@ -23,68 +23,54 @@  tr  |  zh-cn 

    -
    Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.
    -
    -

    ``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_rewrite modü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.

    + oluşturabilir. Kurallara atadığınız seçeneklere + bağlı olarak, yeniden yazılan URL sonuçta dahili işlemlerde, harici + yönlendirmelerde ve 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 25046eafe9..abe6d6ca22 100644 --- a/docs/manual/rewrite/index.xml.meta +++ b/docs/manual/rewrite/index.xml.meta @@ -9,7 +9,7 @@ en fr - tr + tr zh-cn diff --git a/docs/manual/sections.html.tr.utf8 b/docs/manual/sections.html.tr.utf8 index 05aecb1554..5d739a6fd9 100644 --- a/docs/manual/sections.html.tr.utf8 +++ b/docs/manual/sections.html.tr.utf8 @@ -24,16 +24,17 @@  ko  |  tr 

    -
    Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.
    -

    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?
    • @@ -43,455 +44,528 @@ için nasıl kullanılacağı açıklanmıştır.

      Yapılandırma Bölümü Taşıyıcılarının Türleri

      - - -

      İ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.

      + + +

      İ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.

      top
      -

      Dosya Sistemi ve Site Alanı

      - -

      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.

      - -

      Dosya Sistemi Taşıyıcıları

      - -

      <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> -

      - - -

      Site Alanı Taşıyıcıları

      - -

      <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> -

      - - -

      Dosya Adı Şablonları ve Düzenli İfadeler

      - -

      <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> -

      - - - -

      Ne, Ne Zaman Kullanılır?

      - -

      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.

      - +

      Dosya Sistemi, Site Alanı ve Mantıksal İfadeler

      + + +

      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.

      + +

      Dosya Sistemi Taşıyıcıları

      + +

      <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> +

      + + +

      Site Alanı Taşıyıcıları

      + +

      <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> +

      + + +

      Site Alanında Çakışma

      +

      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 +

      + + +

      Dosya Adı Şablonları ve Düzenli İfadeler

      + + +

      <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> +

      + + +

      Mantıksal İfadeler

      +

      <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> +

      + + +

      Ne, Ne Zaman Kullanılır?

      +

      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.

      + + +

      Bölüm iç içeliği

      +

      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.

      +
      top

      Sanal Konaklar

      -

      <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.

      top

      Vekil

      - -

      <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> +

      top

      Hangi Yönergelere İzin Veriliyor?

      - -

      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.
      • +
      top

      Bölümler Nasıl Katıştırılır?

      -

      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:

      1. <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).
      2. <DirectoryMatch> (ve <Directory ~>).
      3. -
      4. <Files> ve <FilesMatch> aynı anda işleme sokulur.
      5. +
      6. <Files> ve + <FilesMatch> aynı anda + işleme sokulur.
      7. <Location> - ve <LocationMatch> + ve <LocationMatch> aynı anda işleme sokulur.
      8. -
      - -

      <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.

      - -

      Bazı Teknik Bilgiler

      - Aslında, isim dönüşüm aşamasından (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. -
      - -

      Bazı Örnekler

      - -

      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.

      + +

      Bazı Teknik Bilgiler

      + Aslında, isim dönüşüm aşamasından (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. +
      + +

      Bazı Örnekler

      + +

      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> +

      +
    diff --git a/docs/manual/sections.xml.meta b/docs/manual/sections.xml.meta index f5ac84359d..4e91a361f4 100644 --- a/docs/manual/sections.xml.meta +++ b/docs/manual/sections.xml.meta @@ -11,6 +11,6 @@ fr ja ko - tr + tr diff --git a/docs/manual/server-wide.html.tr.utf8 b/docs/manual/server-wide.html.tr.utf8 index c5a1c8dbf4..1473a57363 100644 --- a/docs/manual/server-wide.html.tr.utf8 +++ b/docs/manual/server-wide.html.tr.utf8 @@ -24,14 +24,15 @@  ko  |  tr 

    -
    Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.
    -

    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.

    top
    @@ -51,7 +52,7 @@ işlemlerini yapılandırmakta kullanılan yönergelerden bazıları açıklanm yönergeleri, sunucu tarafından, özüne yönelik URL’leri nasıl oluşturacağını saptamak için kullanılır. Örneğin bir istemci bir dizin isteğinde bulunurken URL’nin sonuna bölü çizgisi eklemese bile - Apache’nin istemciyi bölü çizgisi ile bitirilmiş URL yoluna + Apache httpd’nin istemciyi bölü çizgisi ile bitirilmiş URL yoluna yönlendirmesi gerekir; böylece istemci belge içindeki göreli bağlantıları doğru şekilde çözümleyebilir.

    top
    @@ -59,10 +60,10 @@ işlemlerini yapılandırmakta kullanılan yönergelerden bazıları açıklanm

    Dosyaların Yerleri

    - + -

    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 -

    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.

    @@ -89,6 +90,17 @@ işlemlerini yapılandırmakta kullanılan yönergelerden bazıları açıklanm

    ThreadStackSize yönergesi bazı platformlarda yığıt boyutunu denetim altında tutmak için kullanılır.

    +
    top
    +
    +

    Gerçeklenimle ilgili Seçimler

    + + + + +

    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 7833e99a13..2b620bbbf8 100644 --- a/docs/manual/server-wide.xml.meta +++ b/docs/manual/server-wide.xml.meta @@ -11,6 +11,6 @@ fr ja ko - tr + tr diff --git a/docs/manual/ssl/index.html.tr.utf8 b/docs/manual/ssl/index.html.tr.utf8 index 2e5f8969cd..2849ce0757 100644 --- a/docs/manual/ssl/index.html.tr.utf8 +++ b/docs/manual/ssl/index.html.tr.utf8 @@ -24,7 +24,6 @@  tr  |  zh-cn 

    -
    Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.

    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 @@

    Belgeler

    diff --git a/docs/manual/ssl/index.xml.meta b/docs/manual/ssl/index.xml.meta index 044b92b1da..afff2d45ab 100644 --- a/docs/manual/ssl/index.xml.meta +++ b/docs/manual/ssl/index.xml.meta @@ -10,7 +10,7 @@ en fr ja - tr + tr zh-cn