caching.xml.tr revision f97d805ec21cf55b1c14fecee6ff39340f7a8559
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi<?xml version="1.0" encoding="UTF-8" ?>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi<!DOCTYPE manualpage SYSTEM "style/manualpage.dtd">
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi<?xml-stylesheet type="text/xsl" href="style/manual.tr.xsl"?>
f97d805ec21cf55b1c14fecee6ff39340f7a8559nilgun<!-- English Revision: 743408 -->
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi<!-- =====================================================
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Reviewed by: Orhan Berent <berent belgeler.org>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi========================================================== -->
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi<!--
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Licensed to the Apache Software Foundation (ASF) under one or more
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi contributor license agreements. See the NOTICE file distributed with
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi this work for additional information regarding copyright ownership.
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi The ASF licenses this file to You under the Apache License, Version 2.0
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi (the "License"); you may not use this file except in compliance with
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi the License. You may obtain a copy of the License at
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi http://www.apache.org/licenses/LICENSE-2.0
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Unless required by applicable law or agreed to in writing, software
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi distributed under the License is distributed on an "AS IS" BASIS,
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi See the License for the specific language governing permissions and
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi limitations under the License.
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi-->
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi<manualpage metafile="caching.xml.meta">
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Önbellek Kullanım Kılavuzu</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <summary>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Bu belge <module>mod_cache</module>,
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun <module>mod_disk_cache</module>, <module>mod_file_cache</module>
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun modülleri ve <a href="programs/htcacheclean.html">htcacheclean</a>
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun için bir başvuru kılavuzu niteliğindedir. HTTP sunucusu ve vekil
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun olarak çalışmada işlemleri hızlandırmak için bilinen sorunlar ve
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun yanlış yapılandırmalardan kaçınarak Apache’nin önbellekleme
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun özelliklerinin nasıl kullanılacağı açıklanmıştır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </summary>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section id="introduction">
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Giriş</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Apache HTTP sunucusunun 2.2 sürümünden itibaren
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <module>mod_cache</module> ve <module>mod_file_cache</module> modülleri
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi deneysel olmaktan çıkarılmış ve üretim amaçlı kullanılabileceğine karar
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi verilmiştir. Bu önbellekleme mimarileri gerek HTTP sunucusu gerekse
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi vekili olarak çalışmada HTTP işlemlerini hızlandırmak anlamında sunucuya
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi güç katarlar.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun <p><module>mod_cache</module>, ortam sağlayıcı modülü olan
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun <module>mod_disk_cache</module> ile birlikte HTTP önbelleklemesini
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun akıllıca yerine getirir. İçeriğin kendisi önbellekte saklanırken
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun <module>mod_cache</module> içeriğin önbelleklenebilmesini denetim
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun altında tutan HTTP başlıkları ve seçenekleri ile ilgilenir. Yerel ve
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun vekalet edilen içeriğin her ikisinin de aynı anda işlem görmesi
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun sağlanabilir. <module>mod_cache</module>, vekalet edilen içeriğe,
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun devingen yerel içeriğe veya zamanla değişen yerel dosyalara erişimi
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun hızlandırma ihtiyacına yönelik olarak hem basit hem de karmaşık
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun önbellekleme yapılandırmalarını mümkün kılar.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p><module>mod_file_cache</module> ise biraz daha temel ancak bazen daha
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi kullanışlı olabilen bir önbellekleme şekli ile ilgilenir. URL’lerin
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi önbelleklenebilmesini mümkün kılmanın karmaşıklığıyla boğuşmak yerine
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <module>mod_file_cache</module>, dosyaların Apache’nin son başlatıldığı
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi zamanki durumlarını saklamak için dosyaların belleğe eşlenmek üzere ele
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi alınmasını sağlar. Böylelikle, <module>mod_file_cache</module>, çok sık
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi değişmeyen durağan yerel dosyalara erişim zamanını azaltmaya yardım
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi eder.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
f97d805ec21cf55b1c14fecee6ff39340f7a8559nilgun <p><directive module="mod_file_cache">CacheFile</directive> ve
f97d805ec21cf55b1c14fecee6ff39340f7a8559nilgun <directive module="mod_file_cache">MMapFile</directive> yönergeleri ile
f97d805ec21cf55b1c14fecee6ff39340f7a8559nilgun ilgili bölümlerde anlatılanları saymazsak
f97d805ec21cf55b1c14fecee6ff39340f7a8559nilgun <module>mod_file_cache</module>, bu belgenin asıl konusu olan
f97d805ec21cf55b1c14fecee6ff39340f7a8559nilgun <module>mod_cache</module> önbellekleme mimarisine göre daha basit bir
f97d805ec21cf55b1c14fecee6ff39340f7a8559nilgun önbellekleme gerçeklenimidir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Bu belgeden azami yararı sağlayabilmek için temel bir HTTP bilginizin
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi olması ve <a href="urlmapping.html">URL’lerin Dosya Sistemine
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Eşlenmesi</a> ile <a href="content-negotiation.html">İçerik Uzlaşımı</a>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi belgelerini okumuş olmanız gerekir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section id="overview">
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Önbelleklemeye Bir Bakış</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <related>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <modulelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <module>mod_cache</module>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <module>mod_disk_cache</module>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <module>mod_file_cache</module>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </modulelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directivelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directive module="mod_cache">CacheEnable</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directive module="mod_cache">CacheDisable</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directive module="mod_file_cache">CacheFile</directive>
f97d805ec21cf55b1c14fecee6ff39340f7a8559nilgun <directive module="mod_file_cache">MMapFile</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directive module="core">UseCanonicalName</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directive module="mod_negotiation">CacheNegotiatedDocs</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </directivelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </related>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Bir istek sonuçlanıncaya kadar <module>mod_cache</module> modülünde iki
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi aşamadan geçer. İlkinde <module>mod_cache</module> bir URL eşleme modülü
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi olarak çalışır ve URL önbellekteyse ve zaman aşımına uğramamışsa isteğin
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi doğrudan <module>mod_cache</module> tarafından sunulmasını sağlar.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Yani isteğin sunumu sırasında, isteğin örneğin,
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <module>mod_proxy</module> veya <module>mod_rewrite</module> tarafından
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi ele alınması gerekse bile bu yapılmaz. Önbelleklenen içerik ilk alındığı
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi haliyle sunulur.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Eğer URL önbellekte yoksa, <module>mod_cache</module> isteği bir <a
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi href="filter.html">süzgece</a> tabi tutar. Apache içeriğin varlığını
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi saptamışsa içeriğin süzgeç tarafından sunulmasını sağladıktan sonra,
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi süzgeç içeriğin önbelleklenebileceğini saptamışsa gelecekte sunmak üzere
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi içeriği önbelleğe kaydeder.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Eğer URL önbellekte bulunmuş fakat içeriğin zaman aşımına uğradığı
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi anlaşılmışsa süzgeç yine de eklenir fakat bu kez
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <module>mod_cache</module> önbellekteki sürümün hala geçerli olup
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi olmadığını saptamak için kaynağın bulunduğu sunucuya bir koşullu istek
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi gönderir. Önbellekteki sürüm hala geçerliyse temel verileri güncellenir
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi ve istek önbellekten sunulur. Önbellekteki sürüm artık geçerli değilse,
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi önbellekteki sürüm silinir ve süzgeç güncel içeriği önbelleğe kaydeder
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi ve isteği oradan sunar.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Önbelleğin Hızlandırılması</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Yerel içerik önbelleklendiği takdirde <directive
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi module="core">UseCanonicalName</directive> yönergesine <code>On</code>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi değeri atanmışsa önbellekten sunulan sayfa sayısında büyük bir artış
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi olduduğu görülür. Bunun sebebi içeriği sunan sanal konağın isminin
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi önbellek anahtarının bir parçası olarak kullanılmasıdır. Yönergeye
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <code>On</code> değerini atamak suretiyle çok isimli ve rumuzlu sanal
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi konaklar için farklı önbellek girdileri oluşturulmaz, bunun yerine her
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi meşru sanal konak için ayrı bir önbellek tutulur.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Önbellekleme, URL’nin dosya ismine dönüştürülmesi aşamasında
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi gerçekleştiğinden önbelleklenen belgeler sadece URL isteklerine bir
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yanıt olarak sunulurlar. <a href="howto/ssi.html">Sunucu Taraflı
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi İçerikleri</a> kullanmazsanız genellikle bunun fazla bir önemi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi olmaz.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <example>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi &lt;!-- Bu içerik önbelleklenebilir. --&gt;<br />
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi &lt;!--#include virtual="/dipnot.html" --&gt;<br />
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <br />
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi &lt;!-- Bu içerik önbelleklenemez. --&gt;<br />
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi &lt;!--#include file="/bir/yol/dipnot.html" --&gt;
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </example>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Sunucu Taraflı İçerikleri kullanıyorsanız ve önbelleklemenin
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sağladığı hız artışından da yaralanmak istiyorsanız içerik
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yerleştirmek için <code>virtual</code> içerik türünü kullanınız.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Zaman Aşımı Süreleri</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Önbellekli öğeler için öntanımlı zaman aşımı süresi bir saat olmakla
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi birlikte <directive module="mod_cache">CacheDefaultExpire</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yönergesi kullanılarak bu değer kolaylıkla geçersiz kılınabilir. Bu
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi öntanımlı değer sadece içeriğin özgün kaynağı bir zaman aşımı süresi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi veya son değişiklik tarihi belirtmediği takdirde kullanılır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Bir yanıt <code>Expires</code> başlığını değil de
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <code>Last-Modified</code> başlığını içeriyorsa
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <module>mod_cache</module> zaman aşımı süresini <directive
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi module="mod_cache">CacheLastModifiedFactor</directive> yönergesinin
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi nasıl kullanıldığına bakarak saptar.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Yerel içerik için, zaman aşımı süresini hassas olarak ayarlamak
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi gerekirse <module>mod_expires</module> kullanılabilir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Zaman aşımı süresinin üst sınırı <directive
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi module="mod_cache">CacheMaxExpire</directive> yönergesi ile
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi belirlenebilir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Şartlı İstekler için Özlü Kılavuz</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Önbellekteki içerik zaman aşımına uğrayıp, içerik sağlayıcıya veya
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi arka sunucuya özgün isteği aktarmak yerine ayrı bir istek yapılması
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi gereği Apache’nin şartlı bir istek yapması sonucunu doğurur.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Bir istemcinin veya önbelleğin aynı içeriğin farklı sürümleri
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi arasında ayrım yapabilmesi için HTTP protokolü bazı başlık alanları
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi önerir. Örneğin, "Etag:" başlığıyla sunulan bir özkaynak için
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi "If-None-Match:" başlığıyla bir şartlı istek yapmak mümkün olduğu gibi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi özkaynak "Last-Modified:" başlığıyla sunuluyorsa şartlı istek
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi "If-Modified-Since:" başlığıyla yapılabilir, vesaire.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Böyle bir şartlı istek yapıldığında yanıt koşulun içerikle eşleşip
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi eşleşmediğine bağlı olarak farklı olur. Eğer istek bir
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi "If-Modified-Since:" başlığıyla yapılmışsa ve içerik istekte
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi belirtilen zamandan önce değiştirilmemişse kısa ve öz olarak bir "304
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Not Modified" (Bir değişiklik yok) iletisiyle yanıt verilir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Aksi takdirde bir şartlı istek yapılmamış gibi içeriğin kendisi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sunulur.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Önbellekleme ile ilgili şartlı istekler çifte yarar sağlar. Birinci
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi olarak, böyle bir istek arkadaki sunucuya yapılıyorsa ve iki içerik de
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi aynıysa bunu saptamak kolay olur ve özkaynağın tamamını aktarma
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi külfetinden kurtulunur.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>İkinci olarak, şartlı istekler arka sunucuda normalden daha az
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi faaliyete sebep olur. Durağan dosyalar için bu genellikle
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <code>stat()</code> veya benzeri bir sistem çağrısıyla dosya
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi boyutları ve değişiklik zamanına bakmak şeklinde gerçekleşir.
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Böylelikle Apache yerel içeriği önbellekliyor olsa bile ve hatta
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi içerik zaman aşımına da uğrasa önbellekteki dosyada bir değişiklik
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi olmadığı takdirde içeriği önbellekten sunmak daha hızlı olacaktır.
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Çünkü dosyayı önbellekten okumak, arka sunucudan okumaktan daha
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi hızlıdır (bu, bellekten okumayla diskten okumayı karşılaştırmak
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi gibidir).</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Neler Önbelleklenebilir?</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Evvelce bahsedildiği gibi Apache’de iki tür önbellekleme yapılır ve
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi bunlar farklı yöntemlerle çalışır. <module>mod_file_cache</module>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi önbelleklemesinde dosyalar Apache başlatıldığı zamanki içerikle
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi saklanır. Bu modül tarafından önbelleğe alınmış bir dosya için istek
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi geldiğinde isteğin yolu kesilip önbellekteki dosya sunulur.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p><module>mod_cache</module> önbelleklemesinde işler biraz daha
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi karışıktır. Bir isteğe hizmet sunulurken istenen içerik evvelce
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi önbelleklenmemişse önbellekleme modülü önce içeriğin
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi önbelleklenebilirliğine bakar. Bir yanıtın önbelleklenebilirliğini
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi belirleyen koşullar şunlardır:</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <ol>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <li>Önbellekleme bu URL ile etkin kılınabilmelidir. <directive
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi module="mod_cache">CacheEnable</directive> ve <directive
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi module="mod_cache">CacheDisable</directive> yönergelerine bakınız.</li>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <li>Yanıtın HTTP durum kodu 200, 203, 300, 301 veya 410 olmalıdır.</li>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <li>İstek bir HTTP GET isteği olmalıdır.</li>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <li>İstek bir "Authorization:" başlığı içeriyorsa yanıt önbelleğe
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi alınmayacaktır.</li>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <li>Eğer yanıt bir "Authorization:" başlığı içeriyorsa ayrıca
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi "Cache-Control:" başlığında da "s-maxage", "must-revalidate" veya
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi "public" değerlerinden birini içermelidir.</li>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <li>Eğer URL (GET yöntemi kullanan bir HTML formunun yaptığı gibi) bir
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sorgu dizgesi içeriyorsa yanıt, RFC2616’nın 13.9. bölümünde
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi açıklandığı gibi bir "Expires:" başlığı içermedikçe yanıt içeriği
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi önbelleğe alınmayacaktır.</li>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <li><directive module="mod_cache">CacheIgnoreNoLastMod</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yönergesinin kullanımını gerektiren bir durum olmadıkça 200 durum
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi koduna sahip bir yanıtın "Etag", "Last-Modified" ve "Expires"
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi başlıklarından en az birini içermesi gerekir.</li>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <li><directive module="mod_cache">CacheStorePrivate</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yönergesinin kullanımını gerektiren bir durum olmadıkça yanıt
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi "private" değerli bir "Cache-Control:" başlığı içerdiği takdirde
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yanıtın içeriği önbelleğe alınmayacaktır.</li>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <li>Benzer şekilde, <directive module="mod_cache"
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi >CacheStoreNoStore</directive> yönergesi kullanılmamışsa yanıt
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi "no-store" değerli bir "Cache-Control:" başlığı içeriyorsa yanıt
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi içeriği önbelleğe alınmayacaktır.</li>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <li>Herşeyle eşleşen "*" değerli bir "Vary:" başlığı içeren bir
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yanıtın içeriği önbelleğe alınmaz.</li>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </ol>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Neler Önbelleklenmemeli?</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Kısaca, istek zamana aşırı bağımlıysa ya da istek kısmen bile olsa
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi HTTP uzlaşımıyla bağdaşmıyorsa önbelleğe alınmamalıdır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>İçeriği istekçinin IP adresine bağlı olarak değişen veya her beş
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi dakikada bir değişikliğe uğrayan bir devingen içeriğe sahipseniz böyle
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi bir içerik asla önbelleğe alınmamalıdır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Diğer taraftan, içerik HTTP başlığındaki değerlere bağlı olarak
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi değişiyorsa içeriğin bir "Vary" başlığı kullanılarak akıllıca
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi önbelleklenmesi imkanı mevcuttur.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Değişken/Uzlaşımlı İçerik</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>"Vary" başlıklı bir yanıt arka sunucudan istenirken
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <module>mod_cache</module> tarafından alınmışsa akıllıca ele alınmaya
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi çalışılacaktır. Mümkünse, <module>mod_cache</module> gelecekte bu
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi içerikle ilgili isteklerin "Vary" başlıklı yanıtları olacağını
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi saptayacak ve önbellekten doğru içerikle yanıt verecektir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Örneğin, bir yanıt şöyle bir başlık ile alınmışsa,</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <example>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Vary: negotiate,accept-language,accept-charset
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </example>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p><module>mod_cache</module> sadece accept-language ve accept-charset
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi başlıkları özgün istekle eşleşen önbellekli içeriği sunacaktır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section id="security">
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Güvenlik Kaygıları</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Erişim Denetimi ve Yetkilendirme</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p><module>mod_cache</module> çoğunlukla bir karşı vekile sahip olmak
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi amacıyla kullanılır. Arka sunucunun sorgulanmasını gerektirmeyen tüm
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi istekler önbellekleme modülü tarafından karşılanacaktır. Yerel
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi özkaynakların önbelleklenmesi söz konusu olduğunda Apache’nin güvenlik
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi modeli büyükçe bir değişikliğe uğrar.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Olası <code>.htaccess</code> dosyalarının dosya sisteminin tamamında
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi taranması çok pahalı bir işlem olduğundan <module>mod_cache</module>,
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi (işlemi hızlandırmak için) önbelleğe almanın temel amacını kısmen
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi gözardı ederek, önbellekteki içeriğin sunumu için gerekli
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yetkilendirmenin olup olmadığı konusunda bir karar üretmez. Başka bir
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi deyişle, eğer <module>mod_cache</module> bir kısım içeriği önbelleğe
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi almışsa içerik zaman aşımına uğramadığı sürece bu içerik önbellekten
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sunulacaktır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Örneğin, yapılandırmanız bir özkaynağa IP adresine göre erişime izin
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi veriyorsa bu içeriğin önbelleğe alınmayacağından emin olmalısınız.
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Bunu <directive module="mod_cache">CacheDisable</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yönergesini veya <module>mod_expires</module> kullanarak
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yapabilirsiniz. Bunu yapmaz, olayı kendi haline bırakırsanız
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <module>mod_cache</module> bir karşı vekil gibi çalışarak sunulan her
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi içeriği arabelleğe alacak ve hangi IP adresinden gelirse gelsin her
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi istemciye bunu sunacaktır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Yerel İstismarcılar</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Son kullanıcılarıın isteklerine önbellekten hizmet sunulduğundan
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi önbelleğin kendisi içerikle etkileşime geçmek isteyenlerin veya
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi içeriği tahrif etmek isteyenlerin hedefi haline gelebilir. Apache’yi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi çalıştıran kullanıcı tarafından her zaman önbelleğe yazılabileceğini
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi akıldan çıkarmamak önemlidir. Bu durumda alışılmışın tersine tüm
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi içeriğin Apache kullanıcısı tarafından yazılamamasının sağlanması
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi önerilir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Eğer Apache kullanıcısı, örneğin bir CGI sürecindeki açık nedeniyle
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi tehlikeye atılırsa, önbellek hedef alınabilir.
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <module>mod_disk_cache</module> kullanılırken önbellekteki bir öğeyi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi değiştirmek veya önbelleğe yeni bir öğe eklemek görece daha
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi kolaydır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Bu risk, Apache kullanıcısını kullanan diğer saldırı türleriyle
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi karşılaştırıldığında daha yüksektir. <module>mod_disk_cache</module>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi kullanıyorsanız şunları aklınızdan çıkarmayın: (1) Apache güvenlik
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi güncellemelerini takip edin ve sunucunuzu buna göre güncelleyin. (2)
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Mümkünse <a href="suexec.html">suEXEC</a> kullanarak CGI süreçlerini
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Apache kullanıcısı olmayan bir kullanıcının aidiyetinde çalıştırın.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Önbellek Zehirlenmeleri</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Apache bir önbellekli vekil sunucu olarak çalıştığında önbellek
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi zehirlenmesi adı verilen sorunla karşılaşılma olasılığı vardır.
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Önbellek zehirlenmesi, vekil sunucunun arka sunucudan yanlış (ve
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi genellikle istenmeyen) içerik almasına sebep olan bir saldırı türünü
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi betimlemek için yaygın olarak kullanılan bir terimdir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Örneğin Apache’nin çalıştığı sistemin kullandığı DNS sunucuları DNS
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi önbellek zehirlenmesinden etkilenebilecek durumdaysa, bir saldırgan
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Apache’nin istekleri almak için başvuracağı kaynak sunucunun yerini
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi değiştirebilir. Diğer bir örnek, HTTP istek kaçakçılığı adı verilen
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi bir saldırı türüdür.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Bu belge HTTP istek kaçakçılığını derinliğine incelenmesi için uygun
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yer değildir (böyle kaynaklara arama motorunuzla erişebilirsiniz).
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Bununla birlikte, vekil tarafından kaynak sunucudan alınan içeriği
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi tamamen denetim altına almak amacıyla kaynak sunucudaki bir açığı
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi istismar etmeye yönelik bir dizi istek yapılabileceğinin olasılık
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi dahilinde olduğunu bilmenizde yarar vardır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section id="filehandle">
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Dosya Tanıtıcı Önbelleklemesi</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <related>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <modulelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <module>mod_file_cache</module>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </modulelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directivelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directive module="mod_file_cache">CacheFile</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directive module="mod_cache">CacheEnable</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directive module="mod_cache">CacheDisable</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </directivelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </related>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Bir dosyanın açılması işlemi, özellikle de ağ dosya sistemlerinde
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi bulunan dosyalar için önemli bir gecikme kaynağı olabilir. Önbellekte,
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi çok sunulan dosyaların kendilerinin değil, açık dosya tanıtıcılarının
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun saklanması Apache’yi bu tür gecikmelerden koruyabilir. Apache’de tek türde
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi dosya tanıtıcı önbelleklemesi yapılabilmektedir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title><code>CacheFile</code> yönergesi ile</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Apache’de mevcut önbelleklemenin en temel şekli
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <module>mod_file_cache</module> tarafından sağlanan dosya tanıtıcı
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi önbelleklemesidir. Bu önbellek türü dosyaların kendilerini değil açık
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi dosya tanıtıcılarının bir listesini saklar. Dosyaların bu anlamda
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi önbelleklenmesi, <directive module="mod_file_cache"
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi >CacheFile</directive> yönergesi yapılandırma dosyasında belirtilerek
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sağlanabilir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p><directive module="mod_file_cache">CacheFile</directive> yönergesi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi belirtilen dosyanın Apache başlatıldığında açılmasını ve dosya için
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yapılan sonraki her istekte bu dosya tanıtıcısının kullanılmasını
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sağlar.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <example>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi CacheFile /usr/local/apache2/htdocs/index.html
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </example>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Büyük miktarda dosyayı bu anlamda önbelleklemeyi tasarlıyorsanız
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi işletim sisteminizin açık dosya tanıtıcılarının sayısı ile ilgili
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sınırlamasını uygun bir değere ayarlamanız gerekebilir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p><directive module="mod_file_cache">CacheFile</directive> yönergesini
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi kullandığınız takdirde dosya içeriğindeki değişiklikleri anında isteğe
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yansıtamazsınız. Apache dosyayı ilk başlatıldığındaki haliyle
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sunar.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Eğer Apache çalışırken dosya silinmişse Apache ilk başlatıldığındaki
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi haline ilişkin dosya tanıtıcıyı sağlamaya ve dolayısıyla dosya
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi içeriğini sunmaya devam edecektir. Yani, dosya silinmiş ve artık dosya
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sisteminde görünmüyor olsa bile Apache durdurulup dosya tanıtıcıları
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi kapanmadıkça dosyaların silinmesiyle açılan yer serbest
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi kalmayacaktır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section id="inmemory">
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Sistem Belleğinde Önbellekleme</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <related>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <modulelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <module>mod_file_cache</module>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </modulelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directivelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directive module="mod_cache">CacheEnable</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directive module="mod_cache">CacheDisable</directive>
f97d805ec21cf55b1c14fecee6ff39340f7a8559nilgun <directive module="mod_file_cache">MMapFile</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </directivelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </related>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>İçeriğin sistem belleğinden sunulması içerik sunmanın evrensel olarak
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi en hızlı yoludur. Dosyaların bir disk denetleyiciden okunması ya da daha
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi kötüsü uzak bir ağdan okunması bellekten okumayla karşılaştırılamayacak
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi ölçüde yavaş işlemlerdir. Disk denetleyiciler genellikle fiziksel
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi süreçleri denetlerler. Ağ erişimi ise band genişliği sınırlamalarından
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi etkilenir. Halbuki bellek erişimi sadece nano saniyeler mertebesinde
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi gerçekleşir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Sistem belleği en pahalı saklama ortamı olması sebebiyle en verimli
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi şekilde kullanımı önemlidir. Dosyaları sistem belleğinde saklamakla
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sistemin kullanabileceği bellek miktarını azaltmış olursunuz. İşletim
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sistemi önbelleklemesinde göreceğiniz gibi bu öyle basit bir konu
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi değildir. Apache’nin kendi kullandığı belleğin bir kısmını önbellek
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi olarak ayırırken çok fazla bellek kullanmamak önemlidir. Aksi takdirde
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi işletim sistemi belleğin yetmediği noktada belleği diske
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi takaslayacağından istenen başarım artışı sağlanamayacaktır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>İşletim Sistemi Önbelleklemesi</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Günümüz iştetim sistemlerinin hemen hemen tamamında bellek içi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi dosya/veri saklama işlemlerini çekirdek yönetir. Bu güçlü bir
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi özelliktir ve işletim sistemlerinin büyük çoğunluğu bunu böyle yapar.
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Örneğin, Linux’ta bir dosyanın ilk defa okunduğunda ve ikinci kez
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi okunduğunda işlemcinin ne kadar meşgul edildiğine bakalım:</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <example>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi colm@coroebus:~$ time cat testfile &gt; /dev/null<br />
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi real 0m0.065s<br />
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi user 0m0.000s<br />
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sys 0m0.001s<br />
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi colm@coroebus:~$ time cat testfile &gt; /dev/null<br />
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi real 0m0.003s<br />
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi user 0m0.003s<br />
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sys 0m0.000s
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </example>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Küçük bir dosya için bile okuma süresi bakımından büyük fark ortaya
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi çıkmaktadır. Bunun sebebi çekirdeğin dosya içeriğini bellek daha
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi güncel amaçlar için lazım olana dek bellek içinde saklamasıdır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Sisteminizde yeterince yedek bellek olduğundan eminseniz, bu
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi önbellekte daha fazla dosya saklanacağından emin olabilirsiniz.
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Bundan, önbelleğin sistem belleğinde verimli biçimde tutulması için
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Apache’de ek bir yapılandırmaya gidilmesinin gerekmediği sonucu
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi çıkarılabilir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Bundan başka, işletim sistemi dosyaların değiştiği ve silindiği
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi zamanları bildiğinden bu tür dosyaların içerikleri gerektiğinde
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi önbellekten kendiliğinden silinmiş olur. Bellek içinde dosya saklarken
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi dosyaların değiştirilme zamanlarını bilme olanağı olmadığından bu
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi durum Apache’ye büyük yarar sağlar.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>İşletim sisteminin dosyaların önbelleklenmesi için sağladığı bunca
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yarara ve başarım artışına karşın bellek içinde dosya önbelleklemenin
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Apache tarafından yerine getirilmesinin daha iyi olacağı bazı durumlar
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi vardır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
f97d805ec21cf55b1c14fecee6ff39340f7a8559nilgun <title><code>MMapFile</code> yönergesi ile</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p><module>mod_file_cache</module> modülü, bir durağan dosyanın
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi içeriğini sunucunun başlatılması sırasında (mmap sistem çağrısıyla)
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi belleğe eşlenmesini mümkün kılmak için <directive
f97d805ec21cf55b1c14fecee6ff39340f7a8559nilgun module="mod_file_cache" >MMapFile</directive> yönergesini sağlar.
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Apache bu dosyaya gelecek sonraki istekler için dosyanın bellekiçi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi içeriğini kullanacaktır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <example>
f97d805ec21cf55b1c14fecee6ff39340f7a8559nilgun MMapFile /usr/local/apache2/htdocs/index.html
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </example>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p><directive module="mod_file_cache">CacheFile</directive> yönergesinde
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi olduğu gibi bu dosyalarda Apache başlatıldıktan sonra yapılacak bir
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi değişiklikten Apache’nin haberi olmayacaktır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
f97d805ec21cf55b1c14fecee6ff39340f7a8559nilgun <p><directive module="mod_file_cache">MMapFile</directive> yönergesi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi ayırdığı belleğin toplam miktarı ile ilgilenmez, dolayısıyla
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yönergenin aşırı kullanımından kaçınmalısınız. Apache’nin çocuk
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi süreçlerinin her biri bu belleğin kendilerine ait birer kopyasını
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yapacağından belleğe eşlenen dosyaların çok yer kaplamaması büyük önem
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi taşımaktadır; aksi takdirde işletim sistemi belleği diske
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi takaslayacağından beklenen fayda sağlanamayacaktır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section id="disk">
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Disk Üzerinde Önbellekleme</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <related>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <modulelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <module>mod_disk_cache</module>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </modulelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directivelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directive module="mod_cache">CacheEnable</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directive module="mod_cache">CacheDisable</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </directivelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </related>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p><module>mod_disk_cache</module> modülü önbelleklemenin
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun <module>mod_cache</module> için disk üzerinde yapılmasını mümkün
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun kılar. Bbu önbellekleme akıllıca yapılır ve önbellekteki içerik
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun sadece geçerli kabul edildiği sürece sunulabilir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Modül bu amaçla genelde şöyle kullanılır:</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <example>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi CacheRoot /var/cache/apache/<br />
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi CacheEnable disk /<br />
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi CacheDirLevels 2<br />
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi CacheDirLength 1
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </example>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>En önemlisi önbelleklenen dosyaların yerel olarak saklanması olup
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi işletim sisteminin sağladığı bellekiçi önbelleklemeden de ayrıca
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi faydalanılmış olur. Bu bakımdan, dosyalar disk üzerinde saklansa bile
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sıkça erişilen dosyalar işletim sistemi sayesinde aslında bellekten
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sunulmuş olacaklardır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Önbellekte Saklamanın Anlamı</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p><module>mod_disk_cache</module> öğeleri önbellekte saklamak için
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi istek yapılan URL’nin 22 karakterlik özetini oluşturur. Bu özet, çok
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sayıda URL’nin aynı özeti oluşturmaması için konak ismi, protokol,
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi port ve varsa CGI argümanlarından oluşur.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Özeti oluşturan karakterler 64 karakterlik bir karakter kümesinden
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi seçildiğinden oluşturulması olası farklı özet sayısı 64^22’dir.
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Örneğin, bir URL’nin <code>xyTGxSMO2b68mBCykqkp1w</code> gibi bir
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi özeti olabilir. Bu özet, bu URL ile erişilen dosyalar önbellek içinde
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi saklanırken dosya ismi öneki olarak kullanılır. Ancak bununla
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yetinilmez ve içerik <directive
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi module="mod_disk_cache">CacheDirLevels</directive> ve <directive
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi module="mod_disk_cache">CacheDirLength</directive> yönergelerinin
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi değerlerine göre önce dizinlere ayrılır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p><directive module="mod_disk_cache">CacheDirLevels</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yönergesi kaç alt seviye dizin olacağını belirler. Örneğin, yukarıdaki
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi özete sahip bir dosyanın isminin başına yukarıdaki yapılandırma
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi örneğine uygun olarak
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <code>/var/cache/apache/x/y/TGxSMO2b68mBCykqkp1w</code> gibi bir önek
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi getirilebilirdi.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Bu tekniğin asıl amacı belli bir dizin içinde bulunabilecek
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi dosyaların ve alt dizinlerin sayısını düşük tutmaktır. Bu sayının
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi büyük olması çoğu işletim sisteminde başarımın düşmesine sebep olur.
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directive module="mod_disk_cache">CacheDirLength</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yönergesi "1" değeriyle kullanıldığında her dizin altında en fazla 64
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi alt dizin veya dosya açılabilir. "2" değeriyle kullanıldığında ise bu
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sayı 64^2’ye yükselir ve böyle artarak gider. İyi bir sebebiniz
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi olmadıkça <directive
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi module="mod_disk_cache">CacheDirLength</directive> için değer olarak
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi "1" belirtmenizi öneririz.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p><directive module="mod_disk_cache">CacheDirLevels</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi yönergesine atanacak değer önbellekte saklamayı düşündüğünüz olası
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi dosya sayısı ile ilgilidir. Yukarıdaki örnekte olduğu gibi "2"
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi değerini belirtirseniz, toplamda en fazla 4096 dizin oluşturulabilir.
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi 1 milyon dosyanın önbelleklendiği bir durumda bu, her dizinde yaklaşık
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi olarak 245 önbelleklenmiş URL demektir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Her URL için önbellekte en az iki dosya saklanır. Biri genellikle URL
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi hakkındaki temel verilerden oluşan ".header" dosyasıdır, diğeri ise
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sunulacak içeriğin bire bir kopyası olan ".data" dosyasıdır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>"Vary" başlığı üzerinden içeriğin uzlaşıldığı durumda URL için bir
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi ".vary" dizini oluşturulur. Bu dizin her biri farklı bir uzlaşıma ait
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi çok sayıda ".data" dosyası içerebilir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Disk Önbelleğinin Bakımı</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p><module>mod_disk_cache</module> zaman aşımına uğrayan önbellekli
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi içeriği silse de önbelleğin toplam boyu ve ne kadar boş bellek kaldığı
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi hakkında bilgi vermez.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p>Bunun yerine Apache önbellek içeriğini düzenli aralıklarla
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi temizleyebilmeniz için <program>htcacheclean</program> adında bir araç
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi içerir. Önbellek için azami ne kadar yer kullanılacağının ve bunun
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi üzerinde <program>htcacheclean</program>’i hangi sıklıkta
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi çalıştırılacağının tespiti biraz karmaşık bir işlem olup uygun değerler
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi genellikle deneme yanılma yoluyla bulunur.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p><program>htcacheclean</program> iki işlem kipine sahiptir. Kalıcı bir
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi artalan süreci olarak çalışabileceği gibi cron üzerinden belli
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi aralıklarla da çalıştırılabilir. Çok büyük (onlarca GB) önbelleklerde
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <program>htcacheclean</program>’in işini bitirmesi 1 saatten fazla
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sürebileceğinden, cron ile çalıştırma durumunda aynı anda birden fazla
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi kopyanın çalışıyor durumda olmaması için
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <program>htcacheclean</program>’in çalıştırılma aralığını iyi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi belirlemek gerekir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p class="figure">
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <img src="images/caching_fig1.tr.png" alt="" width="600"
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi height="406" /><br />
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <a id="figure1" name="figure1"><dfn>Şekil 1</dfn></a>:
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi Önbelleğin büyümesi ve düzenli aralıklarla temizlenmesi.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <p><module>mod_disk_cache</module> ne kadar önbellek alanı kullandığı
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi ile ilgili bir bilgi vermediğinden <program>htcacheclean</program>’in
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi bir temizlik sonrası yeterince büyük bir genişleme alanı kalacak
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi şekilde yapılandırılması önemlidir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi</manualpage>