github.com/krum110487/go-htaccess@v0.0.0-20240316004156-60641c8e7598/tests/data/apache_2_2_34/manual/caching.html.tr.utf8 (about) 1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 3 <html xmlns="http://www.w3.org/1999/xhtml" lang="tr" xml:lang="tr"><head> 4 <meta content="text/html; charset=UTF-8" http-equiv="Content-Type" /> 5 <!-- 6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 7 This file is generated from xml source: DO NOT EDIT 8 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 9 --> 10 <title>Önbellek Kullanım Kılavuzu - Apache HTTP Sunucusu Sürüm 2.2</title> 11 <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" /> 12 <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" /> 13 <link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="./style/css/prettify.css" /> 14 <script src="./style/scripts/prettify.min.js" type="text/javascript"> 15 </script> 16 17 <link href="./images/favicon.ico" rel="shortcut icon" /><link href="http://httpd.apache.org/docs/current/caching.html" rel="canonical" /></head> 18 <body id="manual-page"><div id="page-header"> 19 <p class="menu"><a href="./mod/">Modüller</a> | <a href="./mod/directives.html">Yönergeler</a> | <a href="http://wiki.apache.org/httpd/FAQ">SSS</a> | <a href="./glossary.html">Terimler</a> | <a href="./sitemap.html">Site Haritası</a></p> 20 <p class="apache">Apache HTTP Sunucusu Sürüm 2.2</p> 21 <img alt="" src="./images/feather.gif" /></div> 22 <div class="up"><a href="./"><img title="<-" alt="<-" src="./images/left.gif" /></a></div> 23 <div id="path"> 24 <a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP Sunucusu</a> > <a href="http://httpd.apache.org/docs/">Belgeleme</a> > <a href="./">Sürüm 2.2</a></div><div id="page-content"><div class="retired"><h4>Please note</h4> 25 <p> This document refers to a legacy release (<strong>2.2</strong>) of Apache httpd. The active release (<strong>2.4</strong>) is documented <a href="http://httpd.apache.org/docs/current">here</a>. If you have not already upgraded, please follow <a href="http://httpd.apache.org/docs/current/upgrading.html">this link</a> for more information.</p> 26 <p>You may follow <a href="http://httpd.apache.org/docs/current/caching.html">this link</a> to go to the current version of this document.</p></div><div id="preamble"><h1>Önbellek Kullanım Kılavuzu</h1> 27 <div class="toplang"> 28 <p><span>Mevcut Diller: </span><a href="./en/caching.html" hreflang="en" rel="alternate" title="English"> en </a> | 29 <a href="./fr/caching.html" hreflang="fr" rel="alternate" title="Français"> fr </a> | 30 <a href="./tr/caching.html" title="Türkçe"> tr </a></p> 31 </div> 32 33 <p>Bu belge <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code>, 34 <code class="module"><a href="./mod/mod_disk_cache.html">mod_disk_cache</a></code>, <code class="module"><a href="./mod/mod_mem_cache.html">mod_mem_cache</a></code>, 35 <code class="module"><a href="./mod/mod_file_cache.html">mod_file_cache</a></code> modülleri ve <a href="programs/htcacheclean.html">htcacheclean</a> için bir başvuru 36 kılavuzu niteliğindedir. HTTP sunucusu ve vekil olarak çalışmada 37 işlemleri hızlandırmak için bilinen sorunlar ve yanlış 38 yapılandırmalardan kaçınarak Apache’nin önbellekleme özelliklerinin 39 nasıl kullanılacağı açıklanmıştır.</p> 40 </div> 41 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#introduction">Giriş</a></li> 42 <li><img alt="" src="./images/down.gif" /> <a href="#overview">Önbelleklemeye Bir Bakış</a></li> 43 <li><img alt="" src="./images/down.gif" /> <a href="#security">Güvenlik Kaygıları</a></li> 44 <li><img alt="" src="./images/down.gif" /> <a href="#filehandle">Dosya Tanıtıcı Önbelleklemesi</a></li> 45 <li><img alt="" src="./images/down.gif" /> <a href="#inmemory">Sistem Belleğinde Önbellekleme</a></li> 46 <li><img alt="" src="./images/down.gif" /> <a href="#disk">Disk Üzerinde Önbellekleme</a></li> 47 </ul><ul class="seealso"><li><a href="#comments_section">Yorum</a></li></ul></div> 48 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div> 49 <div class="section"> 50 <h2><a name="introduction" id="introduction">Giriş</a></h2> 51 52 53 <p>Apache HTTP sunucusunun 2.2 sürümünden itibaren 54 <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> ve <code class="module"><a href="./mod/mod_file_cache.html">mod_file_cache</a></code> modülleri 55 deneysel olmaktan çıkarılmış ve üretim amaçlı kullanılabileceğine karar 56 verilmiştir. Bu önbellekleme mimarileri gerek HTTP sunucusu gerekse 57 vekili olarak çalışmada HTTP işlemlerini hızlandırmak anlamında sunucuya 58 güç katarlar.</p> 59 60 <p><code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code>, ortam sağlayıcı modülleri olan 61 <code class="module"><a href="./mod/mod_mem_cache.html">mod_mem_cache</a></code> ve <code class="module"><a href="./mod/mod_disk_cache.html">mod_disk_cache</a></code> ile 62 birlikte HTTP önbelleklemesini akıllıca yerine getirir. İçeriğin kendisi 63 önbellekte saklanırken <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> içeriğin 64 önbelleklenebilmesini denetim altında tutan HTTP başlıkları ve 65 seçenekleri ile ilgilenir. Yerel ve vekalet edilen içeriğin her ikisinin 66 de aynı anda işlem görmesi sağlanabilir. <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code>, 67 vekalet edilen içeriğe, devingen yerel içeriğe veya zamanla değişen 68 yerel dosyalara erişimi hızlandırma ihtiyacına yönelik olarak hem basit 69 hem de karmaşık önbellekleme yapılandırmalarını mümkün kılar.</p> 70 71 <p><code class="module"><a href="./mod/mod_file_cache.html">mod_file_cache</a></code> ise biraz daha temel ancak bazen daha 72 kullanışlı olabilen bir önbellekleme şekli ile ilgilenir. URL’lerin 73 önbelleklenebilmesini mümkün kılmanın karmaşıklığıyla boğuşmak yerine 74 <code class="module"><a href="./mod/mod_file_cache.html">mod_file_cache</a></code>, dosyaların Apache’nin son başlatıldığı 75 zamanki durumlarını saklamak için dosyaların belleğe eşlenmek üzere ele 76 alınmasını sağlar. Böylelikle, <code class="module"><a href="./mod/mod_file_cache.html">mod_file_cache</a></code>, çok sık 77 değişmeyen durağan yerel dosyalara erişim zamanını azaltmaya yardım 78 eder.</p> 79 80 <p><code class="directive"><a href="./mod/mod_file_cache.html#cachefile">CacheFile</a></code> ve <code class="directive"><a href="./mod/mod_file_cache.html#mmapfile">MMapFile</a></code> yönergeleri ile ilgili 81 bölümlerde anlatılanları saymazsak <code class="module"><a href="./mod/mod_file_cache.html">mod_file_cache</a></code>, bu 82 belgenin asıl konusu olan <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> önbellekleme 83 mimarisine göre daha basit bir önbellekleme gerçeklenimidir.</p> 84 85 <p>Bu belgeden azami yararı sağlayabilmek için temel bir HTTP bilginizin 86 olması ve <a href="urlmapping.html">URL’lerin Dosya Sistemine 87 Eşlenmesi</a> ile <a href="content-negotiation.html">İçerik Uzlaşımı</a> 88 belgelerini okumuş olmanız gerekir.</p> 89 90 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div> 91 <div class="section"> 92 <h2><a name="overview" id="overview">Önbelleklemeye Bir Bakış</a></h2> 93 94 95 96 <table class="related"><tr><th>İlgili Modüller</th><th>İlgili Yönergeler</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code></li><li><code class="module"><a href="./mod/mod_mem_cache.html">mod_mem_cache</a></code></li><li><code class="module"><a href="./mod/mod_disk_cache.html">mod_disk_cache</a></code></li><li><code class="module"><a href="./mod/mod_file_cache.html">mod_file_cache</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_cache.html#cacheenable">CacheEnable</a></code></li><li><code class="directive"><a href="./mod/mod_cache.html#cachedisable">CacheDisable</a></code></li><li><code class="directive"><a href="./mod/mod_file_cache.html#mmapfile">MMapFile</a></code></li><li><code class="directive"><a href="./mod/mod_file_cache.html#cachefile">CacheFile</a></code></li><li><code class="directive"><a href="./mod/core.html#usecanonicalname">UseCanonicalName</a></code></li><li><code class="directive"><a href="./mod/mod_negotiation.html#cachenegotiateddocs">CacheNegotiatedDocs</a></code></li></ul></td></tr></table> 97 98 <p>Bir istek sonuçlanıncaya kadar <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> modülünde iki 99 aşamadan geçer. İlkinde <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> bir URL eşleme modülü 100 olarak çalışır ve URL önbellekteyse ve zaman aşımına uğramamışsa isteğin 101 doğrudan <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> tarafından sunulmasını sağlar.</p> 102 103 <p>Yani isteğin sunumu sırasında, isteğin örneğin, 104 <code class="module"><a href="./mod/mod_proxy.html">mod_proxy</a></code> veya <code class="module"><a href="./mod/mod_rewrite.html">mod_rewrite</a></code> tarafından 105 ele alınması gerekse bile bu yapılmaz. Önbelleklenen içerik ilk alındığı 106 haliyle sunulur.</p> 107 108 <p>Eğer URL önbellekte yoksa, <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> isteği bir <a href="filter.html">süzgece</a> tabi tutar. Apache içeriğin varlığını 109 saptamışsa içeriğin süzgeç tarafından sunulmasını sağladıktan sonra, 110 süzgeç içeriğin önbelleklenebileceğini saptamışsa gelecekte sunmak üzere 111 içeriği önbelleğe kaydeder.</p> 112 113 <p>Eğer URL önbellekte bulunmuş fakat içeriğin zaman aşımına uğradığı 114 anlaşılmışsa süzgeç yine de eklenir fakat bu kez 115 <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> önbellekteki sürümün hala geçerli olup 116 olmadığını saptamak için kaynağın bulunduğu sunucuya bir koşullu istek 117 gönderir. Önbellekteki sürüm hala geçerliyse temel verileri güncellenir 118 ve istek önbellekten sunulur. Önbellekteki sürüm artık geçerli değilse, 119 önbellekteki sürüm silinir ve süzgeç güncel içeriği önbelleğe kaydeder 120 ve isteği oradan sunar.</p> 121 122 <h3>Önbelleğin Hızlandırılması</h3> 123 124 125 <p>Yerel içerik önbelleklendiği takdirde <code class="directive"><a href="./mod/core.html#usecanonicalname">UseCanonicalName</a></code> yönergesine <code>On</code> 126 değeri atanmışsa önbellekten sunulan sayfa sayısında büyük bir artış 127 olduduğu görülür. Bunun sebebi içeriği sunan sanal konağın isminin 128 önbellek anahtarının bir parçası olarak kullanılmasıdır. Yönergeye 129 <code>On</code> değerini atamak suretiyle çok isimli ve rumuzlu sanal 130 konaklar için farklı önbellek girdileri oluşturulmaz, bunun yerine her 131 meşru sanal konak için ayrı bir önbellek tutulur.</p> 132 133 <p>Önbellekleme, URL’nin dosya ismine dönüştürülmesi aşamasında 134 gerçekleştiğinden önbelleklenen belgeler sadece URL isteklerine bir 135 yanıt olarak sunulurlar. <a href="howto/ssi.html">Sunucu Taraflı 136 İçerikleri</a> kullanmazsanız genellikle bunun fazla bir önemi 137 olmaz.</p> 138 139 <div class="example"><p><code> 140 <!-- Bu içerik önbelleklenebilir. --><br /> 141 <!--#include virtual="/dipnot.html" --><br /> 142 <br /> 143 <!-- Bu içerik önbelleklenemez. --><br /> 144 <!--#include file="/bir/yol/dipnot.html" --> 145 </code></p></div> 146 147 <p>Sunucu Taraflı İçerikleri kullanıyorsanız ve önbelleklemenin 148 sağladığı hız artışından da yaralanmak istiyorsanız içerik 149 yerleştirmek için <code>virtual</code> içerik türünü kullanınız.</p> 150 151 152 <h3>Zaman Aşımı Süreleri</h3> 153 154 155 <p>Önbellekli öğeler için öntanımlı zaman aşımı süresi bir saat olmakla 156 birlikte <code class="directive"><a href="./mod/mod_cache.html#cachedefaultexpire">CacheDefaultExpire</a></code> 157 yönergesi kullanılarak bu değer kolaylıkla geçersiz kılınabilir. Bu 158 öntanımlı değer sadece içeriğin özgün kaynağı bir zaman aşımı süresi 159 veya son değişiklik tarihi belirtmediği takdirde kullanılır.</p> 160 161 <p>Bir yanıt <code>Expires</code> başlığını değil de 162 <code>Last-Modified</code> başlığını içeriyorsa 163 <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> zaman aşımı süresini <code class="directive"><a href="./mod/mod_cache.html#cachelastmodifiedfactor">CacheLastModifiedFactor</a></code> yönergesinin 164 nasıl kullanıldığına bakarak saptar.</p> 165 166 <p>Yerel içerik için, zaman aşımı süresini hassas olarak ayarlamak 167 gerekirse <code class="module"><a href="./mod/mod_expires.html">mod_expires</a></code> kullanılabilir.</p> 168 169 <p>Zaman aşımı süresinin üst sınırı <code class="directive"><a href="./mod/mod_cache.html#cachemaxexpire">CacheMaxExpire</a></code> yönergesi ile 170 belirlenebilir.</p> 171 172 173 174 <h3>Şartlı İstekler için Özlü Kılavuz</h3> 175 176 177 <p>Önbellekteki içerik zaman aşımına uğrayıp, içerik sağlayıcıya veya 178 arka sunucuya özgün isteği aktarmak yerine ayrı bir istek yapılması 179 gereği Apache’nin şartlı bir istek yapması sonucunu doğurur.</p> 180 181 <p>Bir istemcinin veya önbelleğin aynı içeriğin farklı sürümleri 182 arasında ayrım yapabilmesi için HTTP protokolü bazı başlık alanları 183 önerir. Örneğin, "Etag:" başlığıyla sunulan bir özkaynak için 184 "If-None-Match:" başlığıyla bir şartlı istek yapmak mümkün olduğu gibi 185 özkaynak "Last-Modified:" başlığıyla sunuluyorsa şartlı istek 186 "If-Modified-Since:" başlığıyla yapılabilir, vesaire.</p> 187 188 <p>Böyle bir şartlı istek yapıldığında yanıt koşulun içerikle eşleşip 189 eşleşmediğine bağlı olarak farklı olur. Eğer istek bir 190 "If-Modified-Since:" başlığıyla yapılmışsa ve içerik istekte 191 belirtilen zamandan önce değiştirilmemişse kısa ve öz olarak bir "304 192 Not Modified" (Bir değişiklik yok) iletisiyle yanıt verilir.</p> 193 194 <p>Aksi takdirde bir şartlı istek yapılmamış gibi içeriğin kendisi 195 sunulur.</p> 196 197 <p>Önbellekleme ile ilgili şartlı istekler çifte yarar sağlar. Birinci 198 olarak, böyle bir istek arkadaki sunucuya yapılıyorsa ve iki içerik de 199 aynıysa bunu saptamak kolay olur ve özkaynağın tamamını aktarma 200 külfetinden kurtulunur.</p> 201 202 <p>İkinci olarak, şartlı istekler arka sunucuda normalden daha az 203 faaliyete sebep olur. Durağan dosyalar için bu genellikle 204 <code>stat()</code> veya benzeri bir sistem çağrısıyla dosya 205 boyutları ve değişiklik zamanına bakmak şeklinde gerçekleşir. 206 Böylelikle Apache yerel içeriği önbellekliyor olsa bile ve hatta 207 içerik zaman aşımına da uğrasa önbellekteki dosyada bir değişiklik 208 olmadığı takdirde içeriği önbellekten sunmak daha hızlı olacaktır. 209 Çünkü dosyayı önbellekten okumak, arka sunucudan okumaktan daha 210 hızlıdır (bu, bellekten okumayla diskten okumayı karşılaştırmak 211 gibidir).</p> 212 213 214 <h3>Neler Önbelleklenebilir?</h3> 215 216 217 <p>Evvelce bahsedildiği gibi Apache’de iki tür önbellekleme yapılır ve 218 bunlar farklı yöntemlerle çalışır. <code class="module"><a href="./mod/mod_file_cache.html">mod_file_cache</a></code> 219 önbelleklemesinde dosyalar Apache başlatıldığı zamanki içerikle 220 saklanır. Bu modül tarafından önbelleğe alınmış bir dosya için istek 221 geldiğinde isteğin yolu kesilip önbellekteki dosya sunulur.</p> 222 223 <p><code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> önbelleklemesinde işler biraz daha 224 karışıktır. Bir isteğe hizmet sunulurken istenen içerik evvelce 225 önbelleklenmemişse önbellekleme modülü önce içeriğin 226 önbelleklenebilirliğine bakar. Bir yanıtın önbelleklenebilirliğini 227 belirleyen koşullar şunlardır:</p> 228 229 <ol> 230 <li>Önbellekleme bu URL ile etkin kılınabilmelidir. <code class="directive"><a href="./mod/mod_cache.html#cacheenable">CacheEnable</a></code> ve <code class="directive"><a href="./mod/mod_cache.html#cachedisable">CacheDisable</a></code> yönergelerine bakınız.</li> 231 232 <li>Yanıtın HTTP durum kodu 200, 203, 300, 301 veya 410 olmalıdır.</li> 233 234 <li>İstek bir HTTP GET isteği olmalıdır.</li> 235 236 <li>İstek bir "Authorization:" başlığı içeriyorsa yanıt önbelleğe 237 alınmayacaktır.</li> 238 239 <li>Eğer yanıt bir "Authorization:" başlığı içeriyorsa ayrıca 240 "Cache-Control:" başlığında da "s-maxage", "must-revalidate" veya 241 "public" değerlerinden birini içermelidir.</li> 242 243 <li>Eğer URL (GET yöntemi kullanan bir HTML formunun yaptığı gibi) bir 244 sorgu dizgesi içeriyorsa yanıt, RFC2616’nın 13.9 ve 13.2.1. 245 bölümünde açıklandığı gibi max-age veya s-maxage değerli bir 246 "Cache-Control:" başlığı veya "Expires:" başlığı ile açıkça bir 247 zaman aşımı içermedikçe yanıt içeriği önbelleğe alınmayacaktır.</li> 248 249 <li><code class="directive"><a href="./mod/mod_cache.html#cacheignorenolastmod">CacheIgnoreNoLastMod</a></code> 250 yönergesinin kullanımını gerektiren bir durum olmadıkça 200 durum 251 koduna sahip bir yanıtın "Etag", "Last-Modified" ve "Expires" 252 başlıklarından en az birini ya da max-age veya s-maxage değerli bir 253 "Cache-Control:" başlığını içermesi gerekir.</li> 254 255 <li><code class="directive"><a href="./mod/mod_cache.html#cachestoreprivate">CacheStorePrivate</a></code> 256 yönergesinin kullanımını gerektiren bir durum olmadıkça yanıt 257 "private" değerli bir "Cache-Control:" başlığı içerdiği takdirde 258 yanıtın içeriği önbelleğe alınmayacaktır.</li> 259 260 <li>Benzer şekilde, <code class="directive"><a href="./mod/mod_cache.html#cachestorenostore">CacheStoreNoStore</a></code> yönergesi kullanılmamışsa yanıt 261 "no-store" değerli bir "Cache-Control:" başlığı içeriyorsa yanıt 262 içeriği önbelleğe alınmayacaktır.</li> 263 264 <li>Herşeyle eşleşen "*" değerli bir "Vary:" başlığı içeren bir 265 yanıtın içeriği önbelleğe alınmaz.</li> 266 </ol> 267 268 269 <h3>Neler Önbelleklenmemeli?</h3> 270 271 272 <p>Kısaca, istek zamana aşırı bağımlıysa ya da istek kısmen bile olsa 273 HTTP uzlaşımıyla bağdaşmıyorsa önbelleğe alınmamalıdır.</p> 274 275 <p>İçeriği istekçinin IP adresine bağlı olarak değişen veya her beş 276 dakikada bir değişikliğe uğrayan bir devingen içeriğe sahipseniz böyle 277 bir içerik asla önbelleğe alınmamalıdır.</p> 278 279 <p>Diğer taraftan, içerik HTTP başlığındaki değerlere bağlı olarak 280 değişiyorsa içeriğin bir "Vary" başlığı kullanılarak akıllıca 281 önbelleklenmesi imkanı mevcuttur.</p> 282 283 284 <h3>Değişken/Uzlaşımlı İçerik</h3> 285 286 287 <p>"Vary" başlıklı bir yanıt arka sunucudan istenirken 288 <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> tarafından alınmışsa akıllıca ele alınmaya 289 çalışılacaktır. Mümkünse, <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> gelecekte bu 290 içerikle ilgili isteklerin "Vary" başlıklı yanıtları olacağını 291 saptayacak ve önbellekten doğru içerikle yanıt verecektir.</p> 292 293 <p>Örneğin, bir yanıt şöyle bir başlık ile alınmışsa,</p> 294 295 <div class="example"><p><code> 296 Vary: negotiate,accept-language,accept-charset 297 </code></p></div> 298 299 <p><code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> sadece accept-language ve accept-charset 300 başlıkları özgün istekle eşleşen önbellekli içeriği sunacaktır.</p> 301 302 303 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div> 304 <div class="section"> 305 <h2><a name="security" id="security">Güvenlik Kaygıları</a></h2> 306 307 308 <h3>Erişim Denetimi ve Yetkilendirme</h3> 309 310 311 <p><code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> çoğunlukla bir karşı vekile sahip olmak 312 amacıyla kullanılır. Arka sunucunun sorgulanmasını gerektirmeyen tüm 313 istekler önbellekleme modülü tarafından karşılanacaktır. Yerel 314 özkaynakların önbelleklenmesi söz konusu olduğunda Apache’nin güvenlik 315 modeli büyükçe bir değişikliğe uğrar.</p> 316 317 <p>Olası <code>.htaccess</code> dosyalarının dosya sisteminin tamamında 318 taranması çok pahalı bir işlem olduğundan <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code>, 319 (işlemi hızlandırmak için) önbelleğe almanın temel amacını kısmen 320 gözardı ederek, önbellekteki içeriğin sunumu için gerekli 321 yetkilendirmenin olup olmadığı konusunda bir karar üretmez. Başka bir 322 deyişle, eğer <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> bir kısım içeriği önbelleğe 323 almışsa içerik zaman aşımına uğramadığı sürece bu içerik önbellekten 324 sunulacaktır.</p> 325 326 <p>Örneğin, yapılandırmanız bir özkaynağa IP adresine göre erişime izin 327 veriyorsa bu içeriğin önbelleğe alınmayacağından emin olmalısınız. 328 Bunu <code class="directive"><a href="./mod/mod_cache.html#cachedisable">CacheDisable</a></code> 329 yönergesini veya <code class="module"><a href="./mod/mod_expires.html">mod_expires</a></code> kullanarak 330 yapabilirsiniz. Bunu yapmaz, olayı kendi haline bırakırsanız 331 <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> bir karşı vekil gibi çalışarak sunulan her 332 içeriği arabelleğe alacak ve hangi IP adresinden gelirse gelsin her 333 istemciye bunu sunacaktır.</p> 334 335 336 <h3>Yerel İstismarcılar</h3> 337 338 339 <p>Son kullanıcılarıın isteklerine önbellekten hizmet sunulduğundan 340 önbelleğin kendisi içerikle etkileşime geçmek isteyenlerin veya 341 içeriği tahrif etmek isteyenlerin hedefi haline gelebilir. Apache’yi 342 çalıştıran kullanıcı tarafından her zaman önbelleğe yazılabileceğini 343 akıldan çıkarmamak önemlidir. Bu durumda alışılmışın tersine tüm 344 içeriğin Apache kullanıcısı tarafından yazılamamasının sağlanması 345 önerilir.</p> 346 347 <p>Eğer Apache kullanıcısı, örneğin bir CGI sürecindeki açık nedeniyle 348 tehlikeye atılırsa, önbellek hedef alınabilir. 349 <code class="module"><a href="./mod/mod_disk_cache.html">mod_disk_cache</a></code> kullanılırken önbellekteki bir öğeyi 350 değiştirmek veya önbelleğe yeni bir öğe eklemek görece daha 351 kolaydır.</p> 352 353 <p>Bu risk, Apache kullanıcısını kullanan diğer saldırı türleriyle 354 karşılaştırıldığında daha yüksektir. <code class="module"><a href="./mod/mod_disk_cache.html">mod_disk_cache</a></code> 355 kullanıyorsanız şunları aklınızdan çıkarmayın: (1) Apache güvenlik 356 güncellemelerini takip edin ve sunucunuzu buna göre güncelleyin. (2) 357 Mümkünse <a href="suexec.html">suEXEC</a> kullanarak CGI süreçlerini 358 Apache kullanıcısı olmayan bir kullanıcının aidiyetinde çalıştırın.</p> 359 360 361 362 <h3>Önbellek Zehirlenmeleri</h3> 363 364 365 <p>Apache bir önbellekli vekil sunucu olarak çalıştığında önbellek 366 zehirlenmesi adı verilen sorunla karşılaşılma olasılığı vardır. 367 Önbellek zehirlenmesi, vekil sunucunun arka sunucudan yanlış (ve 368 genellikle istenmeyen) içerik almasına sebep olan bir saldırı türünü 369 betimlemek için yaygın olarak kullanılan bir terimdir.</p> 370 371 <p>Örneğin Apache’nin çalıştığı sistemin kullandığı DNS sunucuları DNS 372 önbellek zehirlenmesinden etkilenebilecek durumdaysa, bir saldırgan 373 Apache’nin istekleri almak için başvuracağı kaynak sunucunun yerini 374 değiştirebilir. Diğer bir örnek, HTTP istek kaçakçılığı adı verilen 375 bir saldırı türüdür.</p> 376 377 <p>Bu belge HTTP istek kaçakçılığını derinliğine incelenmesi için uygun 378 yer değildir (böyle kaynaklara arama motorunuzla erişebilirsiniz). 379 Bununla birlikte, vekil tarafından kaynak sunucudan alınan içeriği 380 tamamen denetim altına almak amacıyla kaynak sunucudaki bir açığı 381 istismar etmeye yönelik bir dizi istek yapılabileceğinin olasılık 382 dahilinde olduğunu bilmenizde yarar vardır.</p> 383 384 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div> 385 <div class="section"> 386 <h2><a name="filehandle" id="filehandle">Dosya Tanıtıcı Önbelleklemesi</a></h2> 387 388 389 <table class="related"><tr><th>İlgili Modüller</th><th>İlgili Yönergeler</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_file_cache.html">mod_file_cache</a></code></li><li><code class="module"><a href="./mod/mod_mem_cache.html">mod_mem_cache</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_file_cache.html#cachefile">CacheFile</a></code></li><li><code class="directive"><a href="./mod/mod_cache.html#cacheenable">CacheEnable</a></code></li><li><code class="directive"><a href="./mod/mod_cache.html#cachedisable">CacheDisable</a></code></li></ul></td></tr></table> 390 391 <p>Bir dosyanın açılması işlemi, özellikle de ağ dosya sistemlerinde 392 bulunan dosyalar için önemli bir gecikme kaynağı olabilir. Önbellekte, 393 çok sunulan dosyaların kendilerinin değil, açık dosya tanıtıcılarının 394 saklanması Apache’yi bu tür gecikmelerden koruyabilir. Apache’de iki tür 395 dosya tanıtıcı önbelleklemesi yapılabilmektedir.</p> 396 397 <h3><code>CacheFile</code> yönergesi ile</h3> 398 399 400 <p>Apache’de mevcut önbelleklemenin en temel şekli 401 <code class="module"><a href="./mod/mod_file_cache.html">mod_file_cache</a></code> tarafından sağlanan dosya tanıtıcı 402 önbelleklemesidir. Bu önbellek türü dosyaların kendilerini değil açık 403 dosya tanıtıcılarının bir listesini saklar. Dosyaların bu anlamda 404 önbelleklenmesi, <code class="directive"><a href="./mod/mod_file_cache.html#cachefile">CacheFile</a></code> yönergesi yapılandırma dosyasında belirtilerek 405 sağlanabilir.</p> 406 407 <p><code class="directive"><a href="./mod/mod_file_cache.html#cachefile">CacheFile</a></code> yönergesi 408 belirtilen dosyanın Apache başlatıldığında açılmasını ve dosya için 409 yapılan sonraki her istekte bu dosya tanıtıcısının kullanılmasını 410 sağlar.</p> 411 412 <div class="example"><p><code> 413 CacheFile /usr/local/apache2/htdocs/index.html 414 </code></p></div> 415 416 <p>Büyük miktarda dosyayı bu anlamda önbelleklemeyi tasarlıyorsanız 417 işletim sisteminizin açık dosya tanıtıcılarının sayısı ile ilgili 418 sınırlamasını uygun bir değere ayarlamanız gerekebilir.</p> 419 420 <p><code class="directive"><a href="./mod/mod_file_cache.html#cachefile">CacheFile</a></code> yönergesini 421 kullandığınız takdirde dosya içeriğindeki değişiklikleri anında isteğe 422 yansıtamazsınız. Apache dosyayı ilk başlatıldığındaki haliyle 423 sunar.</p> 424 425 <p>Eğer Apache çalışırken dosya silinmişse Apache ilk başlatıldığındaki 426 haline ilişkin dosya tanıtıcıyı sağlamaya ve dolayısıyla dosya 427 içeriğini sunmaya devam edecektir. Yani, dosya silinmiş ve artık dosya 428 sisteminde görünmüyor olsa bile Apache durdurulup dosya tanıtıcıları 429 kapanmadıkça dosyaların silinmesiyle açılan yer serbest 430 kalmayacaktır.</p> 431 432 433 <h3><code>CacheEnable</code> yönergesi ile</h3> 434 435 436 <p><code class="module"><a href="./mod/mod_mem_cache.html">mod_mem_cache</a></code> modülünün ayrıca, <code class="directive"><a href="./mod/mod_cache.html#cacheenable">CacheEnable</a></code> yönergesi üzerinden etkin 437 kılınabilen kendine özgü bir dosya tanıtıcı önbellekleme şeması 438 vardır.</p> 439 440 <div class="example"><p><code> 441 CacheEnable fd / 442 </code></p></div> 443 444 <p><code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code>’nin devreye girdiği her işlemde olduğu 445 gibi bu tür dosya tanıtıcı önbelleklemesi de akıllıca yapılır ve 446 önbellekteki içerik zaman aşımına uğradığı halde sunulmaya devam 447 edilmez.</p> 448 449 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div> 450 <div class="section"> 451 <h2><a name="inmemory" id="inmemory">Sistem Belleğinde Önbellekleme</a></h2> 452 453 454 <table class="related"><tr><th>İlgili Modüller</th><th>İlgili Yönergeler</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_mem_cache.html">mod_mem_cache</a></code></li><li><code class="module"><a href="./mod/mod_file_cache.html">mod_file_cache</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_cache.html#cacheenable">CacheEnable</a></code></li><li><code class="directive"><a href="./mod/mod_cache.html#cachedisable">CacheDisable</a></code></li><li><code class="directive"><a href="./mod/mod_file_cache.html#mmapfile">MMapFile</a></code></li></ul></td></tr></table> 455 456 <p>İçeriğin sistem belleğinden sunulması içerik sunmanın evrensel olarak 457 en hızlı yoludur. Dosyaların bir disk denetleyiciden okunması ya da daha 458 kötüsü uzak bir ağdan okunması bellekten okumayla karşılaştırılamayacak 459 ölçüde yavaş işlemlerdir. Disk denetleyiciler genellikle fiziksel 460 süreçleri denetlerler. Ağ erişimi ise band genişliği sınırlamalarından 461 etkilenir. Halbuki bellek erişimi sadece nano saniyeler mertebesinde 462 gerçekleşir.</p> 463 464 <p>Sistem belleği en pahalı saklama ortamı olması sebebiyle en verimli 465 şekilde kullanımı önemlidir. Dosyaları sistem belleğinde saklamakla 466 sistemin kullanabileceği bellek miktarını azaltmış olursunuz. İşletim 467 sistemi önbelleklemesinde göreceğiniz gibi bu öyle basit bir konu 468 değildir. Apache’nin kendi kullandığı belleğin bir kısmını önbellek 469 olarak ayırırken çok fazla bellek kullanmamak önemlidir. Aksi takdirde 470 işletim sistemi belleğin yetmediği noktada belleği diske 471 takaslayacağından istenen başarım artışı sağlanamayacaktır.</p> 472 473 <h3>İşletim Sistemi Önbelleklemesi</h3> 474 475 476 <p>Günümüz iştetim sistemlerinin hemen hemen tamamında bellek içi 477 dosya/veri saklama işlemlerini çekirdek yönetir. Bu güçlü bir 478 özelliktir ve işletim sistemlerinin büyük çoğunluğu bunu böyle yapar. 479 Örneğin, Linux’ta bir dosyanın ilk defa okunduğunda ve ikinci kez 480 okunduğunda işlemcinin ne kadar meşgul edildiğine bakalım:</p> 481 482 <div class="example"><p><code> 483 colm@coroebus:~$ time cat testfile > /dev/null<br /> 484 real 0m0.065s<br /> 485 user 0m0.000s<br /> 486 sys 0m0.001s<br /> 487 colm@coroebus:~$ time cat testfile > /dev/null<br /> 488 real 0m0.003s<br /> 489 user 0m0.003s<br /> 490 sys 0m0.000s 491 </code></p></div> 492 493 <p>Küçük bir dosya için bile okuma süresi bakımından büyük fark ortaya 494 çıkmaktadır. Bunun sebebi çekirdeğin dosya içeriğini bellek daha 495 güncel amaçlar için lazım olana dek bellek içinde saklamasıdır.</p> 496 497 <p>Sisteminizde yeterince yedek bellek olduğundan eminseniz, bu 498 önbellekte daha fazla dosya saklanacağından emin olabilirsiniz. 499 Bundan, önbelleğin sistem belleğinde verimli biçimde tutulması için 500 Apache’de ek bir yapılandırmaya gidilmesinin gerekmediği sonucu 501 çıkarılabilir.</p> 502 503 <p>Bundan başka, işletim sistemi dosyaların değiştiği ve silindiği 504 zamanları bildiğinden bu tür dosyaların içerikleri gerektiğinde 505 önbellekten kendiliğinden silinmiş olur. Bellek içinde dosya saklarken 506 dosyaların değiştirilme zamanlarını bilme olanağı olmadığından bu 507 durum Apache’ye büyük yarar sağlar.</p> 508 509 510 <p>İşletim sisteminin dosyaların önbelleklenmesi için sağladığı bunca 511 yarara ve başarım artışına karşın bellek içinde dosya önbelleklemenin 512 Apache tarafından yerine getirilmesinin daha iyi olacağı bazı durumlar 513 vardır.</p> 514 515 <p>Öncelikle, işletim sistemi sadece bildiği dosyaları önbellekler (veya 516 önbelleklediği dosyaları bilir). Eğer Apache’yi bir vekil sunucu olarak 517 çalıştırıyorsanız, önbelleklediğiniz dosyalar yerel olarak saklanmadan 518 uzaktan sunulabilir. Ancak bellekiçi önbelleklemenin sağladığı hız 519 artışının dayanılmaz çekiciliğine karşı koyamıyorsanız, Apache’nin kendi 520 bellekiçi önbelleklemesine ihtiyacınız var demektir.</p> 521 522 <h3><code>MMapFile</code> yönergesi ile</h3> 523 524 525 <p><code class="module"><a href="./mod/mod_file_cache.html">mod_file_cache</a></code> modülü, bir durağan dosyanın 526 içeriğini sunucunun başlatılması sırasında (mmap sistem çağrısıyla) 527 belleğe eşlenmesini mümkün kılmak için <code class="directive"><a href="./mod/mod_file_cache.html#mmapfile">MMapFile</a></code> yönergesini sağlar. 528 Apache bu dosyaya gelecek sonraki istekler için dosyanın bellekiçi 529 içeriğini kullanacaktır.</p> 530 531 <div class="example"><p><code> 532 MMapFile /usr/local/apache2/htdocs/index.html 533 </code></p></div> 534 535 <p><code class="directive"><a href="./mod/mod_file_cache.html#cachefile">CacheFile</a></code> yönergesinde 536 olduğu gibi bu dosyalarda Apache başlatıldıktan sonra yapılacak bir 537 değişiklikten Apache’nin haberi olmayacaktır.</p> 538 539 <p><code class="directive"><a href="./mod/mod_file_cache.html#mmapfile">MMapFile</a></code> yönergesi 540 ayırdığı belleğin toplam miktarı ile ilgilenmez, dolayısıyla 541 yönergenin aşırı kullanımından kaçınmalısınız. Apache’nin çocuk 542 süreçlerinin her biri bu belleğin kendilerine ait birer kopyasını 543 yapacağından belleğe eşlenen dosyaların çok yer kaplamaması büyük önem 544 taşımaktadır; aksi takdirde işletim sistemi belleği diske 545 takaslayacağından beklenen fayda sağlanamayacaktır.</p> 546 547 548 <h3><code>mod_mem_cache</code> modülü ile</h3> 549 550 551 <p><code class="module"><a href="./mod/mod_mem_cache.html">mod_mem_cache</a></code> modülü HTTP belirtimine uygun olarak 552 bellekiçi önbelleklemeyi akıllıca uygular. Ayrıca yüksek belleği 553 doğrudan kullanabildiğinden <var>MMap</var> desteği olmayan 554 sistemlerde bile bellekiçi önbellekleme yapabilir.</p> 555 556 <p>Bu tür önbellekleme şöyle etkin kılınabilir:</p> 557 558 <div class="example"><p><code> 559 # Bellekiçi önbelleklemeyi etkin kılalım<br /> 560 CacheEnable mem /<br /> 561 <br /> 562 # Önbellek 1 Megabayttan büyük olmasın<br /> 563 MCacheSize 1024 564 </code></p></div> 565 566 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div> 567 <div class="section"> 568 <h2><a name="disk" id="disk">Disk Üzerinde Önbellekleme</a></h2> 569 570 571 <table class="related"><tr><th>İlgili Modüller</th><th>İlgili Yönergeler</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_disk_cache.html">mod_disk_cache</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_cache.html#cacheenable">CacheEnable</a></code></li><li><code class="directive"><a href="./mod/mod_cache.html#cachedisable">CacheDisable</a></code></li></ul></td></tr></table> 572 573 <p><code class="module"><a href="./mod/mod_disk_cache.html">mod_disk_cache</a></code> modülü önbelleklemenin 574 <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> için disk üzerinde yapılmasını mümkün kılar. 575 <code class="module"><a href="./mod/mod_mem_cache.html">mod_mem_cache</a></code> modülünde olduğu gibi bu önbellekleme de 576 akıllıca yapılır ve önbellekteki içerik sadece geçerli kabul edildiği 577 sürece sunulabilir.</p> 578 579 <p>Modül bu amaçla genelde şöyle kullanılır:</p> 580 581 <div class="example"><p><code> 582 CacheRoot /var/cache/apache/<br /> 583 CacheEnable disk /<br /> 584 CacheDirLevels 2<br /> 585 CacheDirLength 1 586 </code></p></div> 587 588 <p>En önemlisi önbelleklenen dosyaların yerel olarak saklanması olup 589 işletim sisteminin sağladığı bellekiçi önbelleklemeden de ayrıca 590 faydalanılmış olur. Bu bakımdan, dosyalar disk üzerinde saklansa bile 591 sıkça erişilen dosyalar işletim sistemi sayesinde aslında bellekten 592 sunulmuş olacaklardır.</p> 593 594 <h3>Önbellekte Saklamanın Anlamı</h3> 595 596 597 <p><code class="module"><a href="./mod/mod_disk_cache.html">mod_disk_cache</a></code> öğeleri önbellekte saklamak için 598 istek yapılan URL’nin 22 karakterlik özetini oluşturur. Bu özet, çok 599 sayıda URL’nin aynı özeti oluşturmaması için konak ismi, protokol, 600 port ve varsa CGI argümanlarından oluşur.</p> 601 602 <p>Özeti oluşturan karakterler 64 karakterlik bir karakter kümesinden 603 seçildiğinden oluşturulması olası farklı özet sayısı 64^22’dir. 604 Örneğin, bir URL’nin <code>xyTGxSMO2b68mBCykqkp1w</code> gibi bir 605 özeti olabilir. Bu özet, bu URL ile erişilen dosyalar önbellek içinde 606 saklanırken dosya ismi öneki olarak kullanılır. Ancak bununla 607 yetinilmez ve içerik <code class="directive"><a href="./mod/mod_disk_cache.html#cachedirlevels">CacheDirLevels</a></code> ve <code class="directive"><a href="./mod/mod_disk_cache.html#cachedirlength">CacheDirLength</a></code> yönergelerinin 608 değerlerine göre önce dizinlere ayrılır.</p> 609 610 <p><code class="directive"><a href="./mod/mod_disk_cache.html#cachedirlevels">CacheDirLevels</a></code> 611 yönergesi kaç alt seviye dizin olacağını belirler. Örneğin, yukarıdaki 612 özete sahip bir dosyanın isminin başına yukarıdaki yapılandırma 613 örneğine uygun olarak 614 <code>/var/cache/apache/x/y/TGxSMO2b68mBCykqkp1w</code> gibi bir önek 615 getirilebilirdi.</p> 616 617 <p>Bu tekniğin asıl amacı belli bir dizin içinde bulunabilecek 618 dosyaların ve alt dizinlerin sayısını düşük tutmaktır. Bu sayının 619 büyük olması çoğu işletim sisteminde başarımın düşmesine sebep olur. 620 <code class="directive"><a href="./mod/mod_disk_cache.html#cachedirlength">CacheDirLength</a></code> 621 yönergesi "1" değeriyle kullanıldığında her dizin altında en fazla 64 622 alt dizin veya dosya açılabilir. "2" değeriyle kullanıldığında ise bu 623 sayı 64^2’ye yükselir ve böyle artarak gider. İyi bir sebebiniz 624 olmadıkça <code class="directive"><a href="./mod/mod_disk_cache.html#cachedirlength">CacheDirLength</a></code> için değer olarak 625 "1" belirtmenizi öneririz.</p> 626 627 <p><code class="directive"><a href="./mod/mod_disk_cache.html#cachedirlevels">CacheDirLevels</a></code> 628 yönergesine atanacak değer önbellekte saklamayı düşündüğünüz olası 629 dosya sayısı ile ilgilidir. Yukarıdaki örnekte olduğu gibi "2" 630 değerini belirtirseniz, toplamda en fazla 4096 dizin oluşturulabilir. 631 1 milyon dosyanın önbelleklendiği bir durumda bu, her dizinde yaklaşık 632 olarak 245 önbelleklenmiş URL demektir.</p> 633 634 <p>Her URL için önbellekte en az iki dosya saklanır. Biri genellikle URL 635 hakkındaki temel verilerden oluşan ".header" dosyasıdır, diğeri ise 636 sunulacak içeriğin bire bir kopyası olan ".data" dosyasıdır.</p> 637 638 <p>"Vary" başlığı üzerinden içeriğin uzlaşıldığı durumda URL için bir 639 ".vary" dizini oluşturulur. Bu dizin her biri farklı bir uzlaşıma ait 640 çok sayıda ".data" dosyası içerebilir.</p> 641 642 643 <h3>Disk Önbelleğinin Bakımı</h3> 644 645 646 <p><code class="module"><a href="./mod/mod_disk_cache.html">mod_disk_cache</a></code> zaman aşımına uğrayan önbellekli 647 içeriği silse de önbelleğin toplam boyu ve ne kadar boş bellek kaldığı 648 hakkında bilgi vermez.</p> 649 650 <p>Bunun yerine Apache önbellek içeriğini düzenli aralıklarla 651 temizleyebilmeniz için <code class="program"><a href="./programs/htcacheclean.html">htcacheclean</a></code> adında bir araç 652 içerir. Önbellek için azami ne kadar yer kullanılacağının ve bunun 653 üzerinde <code class="program"><a href="./programs/htcacheclean.html">htcacheclean</a></code>’i hangi sıklıkta 654 çalıştırılacağının tespiti biraz karmaşık bir işlem olup uygun değerler 655 genellikle deneme yanılma yoluyla bulunur.</p> 656 657 <p><code class="program"><a href="./programs/htcacheclean.html">htcacheclean</a></code> iki işlem kipine sahiptir. Kalıcı bir 658 artalan süreci olarak çalışabileceği gibi cron üzerinden belli 659 aralıklarla da çalıştırılabilir. Çok büyük (onlarca GB) önbelleklerde 660 <code class="program"><a href="./programs/htcacheclean.html">htcacheclean</a></code>’in işini bitirmesi 1 saatten fazla 661 sürebileceğinden, cron ile çalıştırma durumunda aynı anda birden fazla 662 kopyanın çalışıyor durumda olmaması için 663 <code class="program"><a href="./programs/htcacheclean.html">htcacheclean</a></code>’in çalıştırılma aralığını iyi 664 belirlemek gerekir.</p> 665 666 <p class="figure"> 667 <img src="images/caching_fig1.tr.png" alt="" width="600" height="406" /><br /> 668 <a id="figure1" name="figure1"><dfn>Şekil 1</dfn></a>: 669 Önbelleğin büyümesi ve düzenli aralıklarla temizlenmesi.</p> 670 671 <p><code class="module"><a href="./mod/mod_disk_cache.html">mod_disk_cache</a></code> ne kadar önbellek alanı kullandığı 672 ile ilgili bir bilgi vermediğinden <code class="program"><a href="./programs/htcacheclean.html">htcacheclean</a></code>’in 673 bir temizlik sonrası yeterince büyük bir genişleme alanı kalacak 674 şekilde yapılandırılması önemlidir.</p> 675 676 677 </div></div> 678 <div class="bottomlang"> 679 <p><span>Mevcut Diller: </span><a href="./en/caching.html" hreflang="en" rel="alternate" title="English"> en </a> | 680 <a href="./fr/caching.html" hreflang="fr" rel="alternate" title="Français"> fr </a> | 681 <a href="./tr/caching.html" title="Türkçe"> tr </a></p> 682 </div><div class="top"><a href="#page-header"><img src="./images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Yorum</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div> 683 <script type="text/javascript"><!--//--><![CDATA[//><!-- 684 var comments_shortname = 'httpd'; 685 var comments_identifier = 'http://httpd.apache.org/docs/2.2/caching.html'; 686 (function(w, d) { 687 if (w.location.hostname.toLowerCase() == "httpd.apache.org") { 688 d.write('<div id="comments_thread"><\/div>'); 689 var s = d.createElement('script'); 690 s.type = 'text/javascript'; 691 s.async = true; 692 s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier; 693 (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s); 694 } 695 else { 696 d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>'); 697 } 698 })(window, document); 699 //--><!]]></script></div><div id="footer"> 700 <p class="apache">Copyright 2017 The Apache Software Foundation.<br /><a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a> altında lisanslıdır.</p> 701 <p class="menu"><a href="./mod/">Modüller</a> | <a href="./mod/directives.html">Yönergeler</a> | <a href="http://wiki.apache.org/httpd/FAQ">SSS</a> | <a href="./glossary.html">Terimler</a> | <a href="./sitemap.html">Site Haritası</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!-- 702 if (typeof(prettyPrint) !== 'undefined') { 703 prettyPrint(); 704 } 705 //--><!]]></script> 706 </body></html>