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"?>
0a05fab9aadd37834734ffe106fc8ad4488fb3e3rbowen<!-- English Revision: 1291840:1673947 (outdated) -->
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>,
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <module>mod_cache_disk</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
93c008c2b86440e659ac421f4b7abd19d8767908nilgun yanlış yapılandırmalardan kaçınarak Apache HTTPD sunucusunun önbellekleme
0fd698d8db8a8243e30dceabe622b3ffc2d78c61nilgun özelliklerinin nasıl kullanılacağı açıklanmıştır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </summary>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section id="introduction">
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Giriş</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Apache HTTP sunucusu, sunucunun başarımını çeşitli yollarla arttırmak
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun üzere tasarlanmış bir dizi önbellekleme özelliğine sahiptir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dl>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dt>Üç durumlu RFC2616 HTTP önbelleklemesi</dt>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_cache</module> ve destek modülü
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_cache_disk</module> akılcı ve HTTP'ye uygun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbellekleme sağlar. İçeriğin kendisi önbellekte saklanır ve
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_cache</module>, <a
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html"
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun >RFC2616'nın 13. bölümü</a>nde açıklandığı gibi, içeriğin
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbelleklenebilirliğini denetleyen çeşitli HTTP başlıklarının ve
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun seçeneklerinin tümünü onurlandırmayı hedefler.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun Devingen yerel içerik veya vekalet edilen içerik ile ilgilendiğiniz
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun durumda veya muhtemel bir yavaş disk üzerinde yerel dosyalara
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun erişimi hızlandırmak ihtiyacında olduğunuz durumda
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_cache</module> hem basit hem de karmaşık önbellekleme
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yapılandırmalarını hedefler.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dt>İki durumlu anahtar/değer paylaşımlı nesne önbellekleme</dt>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <a href="socache.html">Paylaşımlı nesne önbellek API'si</a>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun (socache) ve destek modülleri sunucu taraflı bir anahtar/değer
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun paylaşımlı nesne önbelleklemesi sağlar. Bu modüller SSL oturumları
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun ve kimlik doğrulama bilgileri gibi düşük seviyeli verileri
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbelleklemek için tasarlanmıştır. Destek modülleri verinin sunucu
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun tarafı bir paylaşımlı bellekte veya veri merkezi tarafı memcache
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun veya distcache gibi bir önbellekte saklanmasını mümkün kılar.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dt>Uzmanlaşmış dosya önbellekleme</dt>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_file_cache</module> dosyaların sunucunun başlatılması
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sırasında belleğe yüklenmesi ile ilgilenir. Böylece dosyalara
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun erişim zamanını kısaltabilir, sıkça erişilen dosyaların dosya
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun tanıtıcılarını kaydedebilir, her istekte diske gitme ihtiyacını
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun ortadan kaldırır.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </dl>
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
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <section id="http-caching">
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title>Üç durumlu RFC2616 HTTP önbelleklemesi</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <related>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <modulelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <module>mod_cache</module>
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <module>mod_cache_disk</module>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </modulelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directivelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directive module="mod_cache">CacheEnable</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directive module="mod_cache">CacheDisable</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directive module="core">UseCanonicalName</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <directive module="mod_negotiation">CacheNegotiatedDocs</directive>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </directivelist>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </related>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>HTTP protokolü
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html"
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun >RFC2616'nın 13. bölümü</a>nde açıklanan satıriçi önbellekleme
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun mekanizması için yerleşik bir destek içerir ve bunun getirilerinden
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yararlanmak için <module>mod_cache</module> modülü kullanılabilir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>İçeriğin taze olmadığı durumda içeriğin kaybolmasına sebep olan basit
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun iki durumlu anahtar/değer önbelleklemesinin tersine, HTTP önbelleği
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun eskimiş içeriği tutan ve bu eski içeriğin değişip değişmediğini özgün
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sunucuya soran ve duruma göre onu tekrar taze duruma getiren bir
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun mekanizma içerir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>HTTP önbelleğinde bulunan bir girdi şu üç durumdan birinde olabilir:</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dl>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dt>Taze</dt>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun İçerik yeteri kadar yeni (<strong>tazelik ömrü</strong>nden daha genç)
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun ise <strong>taze</strong> sayılır. Bir HTTP önbelleği böyle bir içeriği
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun özgün sunucuya birşey sormadan sunabilir.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dt>Bayat</dt>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>İçerik çok eski (<strong>tazelik ömrü</strong>nden daha yaşlı)
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun ise <strong>bayat</strong> sayılır. Bir HTTP önbelleği böyle bir
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun içeriği istemciye sunmadan önce özgün sunucuya bağlanıp bayat içeriğin
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun hala yeterince taze olup olmadığına bakmalıdır. Özgün sunucu, içerik
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun geçersizse yenisini gönderecektir, aksi takdirde, (ideal olanı budur)
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun içeriğin hala geçerli olduğunu belirten bir kod ile yanıt verecektir.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun İçerik tekrar taze hale gelince süreç kaldığı yerden devam eder.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>HTTP protokolü belli koşullar altında önbelleğin bayat içeriği
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sunmasına izin vermez. Örneğin, bir içeriği özgün sunucuda tazeleme
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun çabasının bir 5xx hatasıyla başarısız olması veya başka bir tazeleme
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun isteğinin henüz sonuçlanmamış olması bu çeşit koşullardandır. Bu
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun durumlarda yanıta bir <code>Warning</code> başlığı eklenir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dt>Yok</dt>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun Önbellekte yer kalmazsa yer açmak için içeriğin silinmesi seçenek
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun dahilindedir. İçerik taze olsun olmasın her zaman silinebilir. Önlem
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun olarak <program>htcacheclean</program> elle veya bir artalan süreci
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun olarak çalıştırılabilir. Böylece önbelleğin boyutunun belirtilen
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun boyutta veya belirtilen dosya düğümü sayısında kalması sağlanabilir.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun Araç içeriği silerken bayat içeriğe öncelik verir.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </dl>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>HTTP önbelleklemesinin çalışması ile ilgili bütün ayrıntılar
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html"
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun >RFC2616'nın 13. bölümünde</a> bulunabilir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title>Sunucu ile etkileşim</title>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p><module>mod_cache</module> modülü
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <directive module="mod_cache">CacheQuickHandler</directive> yönergesinin
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun değerine bağlı olarak iki olası yerde sunucuya bağlanır:
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dl>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dt>Çabuk eylem aşaması</dt>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Bu aşama çok erken gerçekleşen bir aşama olup isteğin işlenmesi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sırasında isteğin çözümlenmesinin hemen sonrasıdır. İçerik
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbellekte mevcutsa hemen sunulur ve geri kalan istek işleme işlemi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun iptal edilir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Bu senaryoda önbellek sunucunun önüne vidalanmış gibi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun davranır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Sunucuda gerçekleşecek bir dizi işlemin büyük çoğunluğunun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yapılmadan geçilmesi nedeniyle bu en yüksek başarımlı kiptir.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun Bu kip ayrıca, sunucu işlemlerinin kimlik doğrulama ve yetkilendirme
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun aşamalarının da yapılmadan geçilmesini sağlar. Bu bakımdan bu kip
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun seçilirken bu durum dikkate alınmalıdır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dt>Normal eylem aşaması</dt>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Bu aşama geç bir aşama olup, isteğin tamamen işlenmesinin
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sonrasıdır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Bu senaryoda önbellek sunucunun arkasına vidalanmış gibi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun davranır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Bu kip en esneğidir. Önbelleğin, süzme zincirinin hassas olarak
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun denetlenen bir noktasında oluşması sağlanabilir ve önbelleklenen
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun içerik istemciye gönderilmeden önce süzülüp
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun kişiselleştirilebilir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </dl>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>URL önbellekte yoksa <module>mod_cache</module> modülü yanıtı
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbelleğe kaydetme aşamasında süzgeç yığıtına bir
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <a href="filter.html">süzgeç</a> ekler ve geri çekilerek normal istek
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun işlemlerinin devam etmesine izin verir. İçeriğin önbelleklenebilir
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun olduğu saptanırsa içerik gelecekte sunulmak üzere önbelleğe
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun kaydedilir, aksi takdirde içerik yok sayılır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Önbellekteki içerik bayatsa, <module>mod_cache</module> modülü
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun isteği bir <strong>koşullu istek</strong> haline getirir. Özgün
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sunucu normal bir yanıt verirse bu yanıt mevcut içeriğin yerine
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbelleklenir. Özgün sunucu bir <code>304 Not Modified</code> yanıtı
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun verirse içerik tekrar taze olarak imlenir ve önbellekteki içerik
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun süzgeç tarafından kaydedilmeden sunulur.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Önbelleğin Hızlandırılması</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Bir sanal konak birçok farklı sunucu takma adından biri olarak
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun bilindiğ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ış
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun olduğu görülür. Bunun sebebi içeriği sunan sanal konağın isminin
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbellek anahtarının içinde 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 </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title>Tazelik Ömrü</title>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Önbelleklenmek üzere tasarlanmış iyi biçimli bir içerik tazelik ömrünü
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <code>Cache-Control</code> başlığının <code>max-age</code> veya
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <code>s-maxage</code> alanlarıyla ya da bir <code>Expires</code>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun başlığını içererek bildirmelidir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Aynı zamanda, özgün sunucunun tanımladığı tazelik ömrü, bir istemci
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun tarafından istekte bir <code>Cache-Control</code> başlığı kullanılarak
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun geçersiz kılınmak istenebilir. Bu durumda hangi tazelik ömrü daha
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun kısaysa o geçerli olur.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Tazelik ömrü istekte veya yanıtta mevcut değilse öntanımlı bir tazelik
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun ömrü kullanılır. Öntanımlı tazelik ömrü önbellekli içerik için bir saat
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun olmakla birlikte <directive
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun module="mod_cache">CacheDefaultExpire</directive> yönergesi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun kullanılarak kolayca değiştirilebilir.</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
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_cache</module> tazelik ömrünü <directive
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun module="mod_cache">CacheLastModifiedFactor</directive> yönergesine
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun bakarak saptar.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Yerel içerik için, ya da kendi <code>Expires</code> başlığını
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun tanımlamayan uzak içerik için tazelik ömrünü <code>max-age</code> ve
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <code>Expires</code> ekleyerek hassas olarak ayarlamak
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun için <module>mod_expires</module> kullanılabilir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Tazelik ömrünün üst sınırı <directive
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi module="mod_cache">CacheMaxExpire</directive> yönergesi ile
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi belirlenebilir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Şartlı İstekler için Özlü Kılavuz</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Önbellekteki içeriğin zaman aşımına uğrayıp bayat hale gelmesi,
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun httpd’nin özgün isteği aktarmak yerine isteği değişikliğe uğratarak
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun şartlı bir istek yapması sonucunu doğurur.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Özgün önbellekli yanıtta bir <code>ETag</code> başlığı mevcutsa,
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_cache</module> modülü özgün sunucuya yapılan isteğe
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun bir <code>If-None-Match</code> başlığı ekler.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun Özgün önbellekli yanıtta bir <code>Last-Modified</code> başlığı
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun mevcutsa, <module>mod_cache</module> modülü özgün sunucuya yapılan
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun isteğe bir <code>If-Modified-Since</code> başlığı ekler. Bunlardan
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun birinin varlığı isteği <strong>koşullu</strong> yapar.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Bir koşullu istek özgün sunucu tarafından alındığında, özgün sunucu
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <code>ETag</code> veya <code>Last-Modified</code> başlığının isteğe
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun uygun olarak değişip değişmediğine bakmalıdır. Değişmemişse, özgün
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sunucu kısa ve öz bir "304 Not Modified" yanıtı ile yanıt vermelidir.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun Bunun önbellekteki anlamı şudur: Eskimiş içerik hala tazedir ve içerik
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yeni tazelik ömrüne ulaşıncaya kadar sonraki isteklerde
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun kullanılmalıdır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>İçerik değişmişse, bir şartlı istek yapılmamış gibi içeriğin kendisi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi sunulur.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Şartlı istekler çifte yarar sağlar. Birinci olarak, böyle bir istek
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun özgün sunucuya yapılıyorsa ve iki içerik de aynıysa bunu saptamak kolay
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun olur ve özkaynağın tamamını aktarma külfetinden kurtulunur.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>İkinci olarak, iyi tasarlanmış bir özgün sunucu, koşullu istekler tam
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun bir yanıt üretmekten önemli ölçüde ucuz olacak şekilde tasarlanmış
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun olacaktır. 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.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun Böylelikle, yerel içeriği bir değişiklik olmadığı takdirde önbellekten
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sunmak daha hızlı olacaktır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Özgün sunucular koşullu istekleri desteklemek için her türlü çabayı
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun göstermelidir. Ancak, koşullu istekler desteklenmiyorsa, özgün sunucu
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun istek koşullu değilmiş gibi yanıt vermeli, önbellek ise, içerik
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun değişmiş ve yani içerik önbelleğe kaydedilmiş gibi yanıt vermelidir. Bu
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun durumda, önbellek basit bir iki durumlu (içerik ya tazedir ya da
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun silinmiş) önbellek gibi davranacaktır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Neler Önbelleklenebilir?</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>HTTP önbelleğin tarafından önbelleklenebilecek içerik
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun<a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html#sec13.4">
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun RFC2616 Section 13.4 Response Cacheability</a> belgesinde tanımlanmış
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun olup, bunlar şöyle özetlenebilir:</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>Eğer yanıt bir "Authorization:" başlığı içeriyorsa ayrıca
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi "Cache-Control:" başlığında da "s-maxage", "must-revalidate" veya
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun "public" değerlerinden birini içermelidir, aksi takdirde
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbelleklenmez.</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
93c008c2b86440e659ac421f4b7abd19d8767908nilgun açıklandığı gibi bir "Expires:" başlığı içermedikçe veya
93c008c2b86440e659ac421f4b7abd19d8767908nilgun "Cache-Control:" başlığının max-age veya max-age yönergesini
93c008c2b86440e659ac421f4b7abd19d8767908nilgun içermedikçe yanıt içeriği ö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"
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun başlıklarından birini veya "Cache-Control:" başlığının "max-age" veya
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun "s-maxage" yönergelerinden birini (en azından) 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
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>İçerik zamana bağımlıysa ya da istek kısmen bile olsa HTTP uzlaşımıyla
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun bağdaşmıyorsa önbelleğe alınmamalıdır. Bu içerik önbelleklenemeyeceğini
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <code>Cache-Control</code> başlığını kullanarak sunucuya
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun bildirmelidir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>İçerik sıkça değişiyorsa, tazelik ömrü dakikalar veya saniyelerle
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun ifade ediliyorsa, içerik yine de önbelleklenebilir. Ancak, tam
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yanıtların düzenli olarak üretilmemesinin temini için özgün sunucunun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <strong>koşullu istekleri</strong> doğru olarak desteklemesi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sağlanmalıdır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>İstemcinin sağladığı istek başlıklarına dayanarak değişen içerik,
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <code>Vary</code> yanıt başlığının akıllıca kullanımıyla
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbelleklenebilir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Değişken/Uzlaşımlı İçerik</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Özgün sunucu, istekteki başlık değerlerine dayanarak farklı
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun içeriklerle yanıt vermeye ayarlandığı takdirde, örneğin aynı URL'de
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun farklı dillerde içerik sunmak gibi, HTTP'nin önbellekleme mekanizması
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun aynı URL'de aynı sayfanın değişik sürümlerini önbelleklemeyi mümkün
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun kılar.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Bu özgün sunucu tarafından bir <code>Vary</code> başlığı eklenerek
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yapılır. Bir sayfanın farklı sürümleri arasındaki farkları saptarken
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbellek tarafından hangi başlıkların hesaba katılacağını
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <code>Vary</code> başlığı belirler.</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
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>İçeriğin farklı sürümleri yan yana önbelleklenebilir.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_cache</module> modülü <code>Vary</code> başlığını
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun kullanarak başlıkta listelenmiş istek başlıklarının uygun değerlerini
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun saptar ve istemciye hangi sürümle yanıt verileceğine karar verir.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <section id="disk">
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title>Disk Üzerinde Önbellekleme</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p><module>mod_cache</module> modülü önbelleği yönetmek için çeşitli
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun depolama ortamlarına özgü gerçeklenimleri kullanır. Diske önbellekleme
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun desteğini <module>mod_cache_disk</module> sağlar.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Tipik olarak modül şöyle yapılandırılır:</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <example>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgunCacheRoot /var/cache/apache/<br />
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgunCacheEnable disk /<br />
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgunCacheDirLevels 2<br />
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgunCacheDirLength 1
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </example>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>En önemlisi önbelleklenen dosyaların yerel olarak saklanması olup
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun işletim sisteminin sağladığı bellekiçi önbelleklemeden de ayrıca
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun faydalanılmış olur. Bu bakımdan, dosyalar disk üzerinde saklansa bile
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sıkça erişilen dosyalar işletim sistemi sayesinde aslında bellekten
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sunulmuş olacaklardır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi <title>Önbellekte Saklamanın Anlamı</title>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <p><module>mod_cache_disk</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,
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun port ve varsa CGI argümanlarından başka <code>Vary</code> başlığında
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun tanımlı elemanlardan 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
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin module="mod_cache_disk">CacheDirLevels</directive> ve <directive
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin module="mod_cache_disk">CacheDirLength</directive> yönergelerinin
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi değerlerine göre önce dizinlere ayrılır.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <p><directive module="mod_cache_disk">CacheDirLevels</directive>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yönergesi kaç alt seviye dizin olacağını ve <directive
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun module="mod_cache_disk">CacheDirLength</directive> her dizinde kaç
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun karakter 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.
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <directive module="mod_cache_disk">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
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin module="mod_cache_disk">CacheDirLength</directive> için değer olarak
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi "1" belirtmenizi öneririz.</p>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <p><directive module="mod_cache_disk">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
78f97ce162b66a0dbfd7af4dcd9984f162569b04minfrin <p><module>mod_cache_disk</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
93c008c2b86440e659ac421f4b7abd19d8767908nilgun <p>Bunun yerine httpd ö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
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Ayrıca, <program>htcacheclean</program> için uygun bir "nice" seviyesi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun seçilmesi önerilr. Böylece, sunucu çalışırken aracın ölçüsüz disk g/ç
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yapmasına sebebiyet verilmemiş olur.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
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
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p><module>mod_cache_disk</module> ne kadar bellek kullanıldığı hakkında
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun bilgi vermediğinden, <program>htcacheclean</program>'in bir temizliğin
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun ardından yeterli bir büyüme alanı kalacak şekilde yapılandırılması
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun temin edilmelidir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <section id="socache-caching">
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title>İki durumlu Anahtar/Değer Paylaşımlı Nesne Önbellekleme</title>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <related>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <modulelist>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_authn_socache</module>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_socache_dbm</module>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_socache_dc</module>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_socache_memcache</module>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_socache_shmcb</module>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_ssl</module>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </modulelist>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <directivelist>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <directive module="mod_authn_socache">AuthnCacheSOCache</directive>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <directive module="mod_ssl">SSLSessionCache</directive>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <directive module="mod_ssl">SSLStaplingCache</directive>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </directivelist>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </related>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Apache HTTP sunucusu, SSL oturumları, kimlik doğrulama bilgileri gibi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbelleklenebilen özel bilgiler için <a href="socache.html">socache</a>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun arayüzü içinde düşük seviyeli bir paylaşımlı nesne önbelleğine
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sahiptir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Her gerçeklenime uygun ek modüller de sağlanmıştır:</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dl>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dt><module>mod_socache_dbm</module></dt>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dd>DBM tabanlı paylaşımlı nesne önbelleklemesi.</dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dt><module>mod_socache_dc</module></dt>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dd>Distcache tabanlı paylaşımlı nesne önbelleklemesi.</dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dt><module>mod_socache_memcache</module></dt>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dd>Memcache tabanlı paylaşımlı nesne önbelleklemesi.</dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dt><module>mod_socache_shmcb</module></dt>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <dd>Paylaşımlı belleğe dayalı paylaşımlı nesne önbelleklemesi.</dd>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </dl>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <section id="mod_authn_socache-caching">
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title>Kimlik Doğrulama Bilgilerinin Önbelleklenmesi</title>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <related>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <modulelist>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_authn_socache</module>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </modulelist>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <directivelist>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <directive module="mod_authn_socache">AuthnCacheSOCache</directive>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </directivelist>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </related>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p><module>mod_authn_socache</module> modülü kimlik doğrulama araçlarının
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yükünün hafifletilmesini, kimlik doğrulama sonucunun önbelleklenmesini
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sağlar.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <section id="mod_ssl-caching">
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title>SSL Oturumlarının Önbelleklenmesi</title>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <related>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <modulelist>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_ssl</module>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </modulelist>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <directivelist>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <directive module="mod_ssl">SSLSessionCache</directive>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <directive module="mod_ssl">SSLStaplingCache</directive>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </directivelist>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </related>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p><module>mod_ssl</module> modülü, oturum önbelleği ve önbellek
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun zımbalaması sağlamak için <code>socache</code> arayüzünü kullanır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <section id="file-caching">
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title>Uzmanlaşmış Dosya Önbellekleme</title>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <related>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <modulelist>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_file_cache</module>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </modulelist>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <directivelist>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <directive module="mod_file_cache">CacheFile</directive>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <directive module="mod_file_cache">MMapFile</directive>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </directivelist>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </related>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Dosya sisteminin yavaş olabildiği veya dosya tanıtıcılarının
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun kullanımının pahalıya mal olduğu sistemlerde, sunucunun başlatılması
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sırasında dosyaların belleğe yüklenmesi seçeneği vardır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Dosyaların açılmasının yavaş olduğu sistemlerde, dosyaların sunucunun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun başlatılması sırasında açılması ve dosya tanıtıcısını önbelleklenmesi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun seçeneği vardır. Bu seçeneklerin duruk dosyalara erişimin yavaş olduğu
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sistemlere de bir yardımı olabilir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <section id="filehandle">
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title>Dosya Tanıtıcı Önbelleklemesi</title>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Bir dosyanın açılması işlemi, özellikle de ağ dosya sistemlerinde
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun bulunan dosyalar için önemli bir gecikme kaynağı olabilir. Önbellekte,
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun çok sunulan dosyaların kendilerinin değil, açık dosya tanıtıcılarının
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun saklanması httpd’yi bu tür gecikmelerden koruyabilir. httpd’de tek
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun türde dosya tanıtıcı önbelleklemesi yapılabilmektedir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title><code>CacheFile</code> yönergesi ile</title>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>httpd’de mevcut önbelleklemenin en temel şekli
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_file_cache</module> tarafından sağlanan dosya tanıtıcı
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbelleklemesidir. Bu önbellek türü dosyaların kendilerini değil açık
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun dosya tanıtıcılarının bir listesini saklar. Dosyaların bu anlamda
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbelleklenmesi, <directive module="mod_file_cache"
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun >CacheFile</directive> yönergesi yapılandırma dosyasında belirtilerek
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sağlanabilir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p><directive module="mod_file_cache">CacheFile</directive> yönergesi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun belirtilen dosyanın httpd başlatıldığında açılmasını ve dosya için
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yapılan sonraki her istekte bu dosya tanıtıcısının kullanılmasını
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sağlar.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <example>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun CacheFile /usr/local/apache2/htdocs/index.html
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </example>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Büyük miktarda dosyayı bu anlamda önbelleklemeyi tasarlıyorsanız
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun işletim sisteminizin açık dosya tanıtıcılarının sayısı ile ilgili
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sınırlamasını uygun bir değere ayarlamanız gerekebilir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p><directive module="mod_file_cache">CacheFile</directive> yönergesini
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun kullandığınız takdirde dosya içeriğindeki değişiklikleri anında
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun isteğe yansıtamazsınız. httpd dosyayı ilk başlatıldığındaki haliyle
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sunar.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Eğer httpd çalışırken dosya silinmişse httpd ilk başlatıldığındaki
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun haline ilişkin dosya tanıtıcıyı sağlamaya ve dolayısıyla dosya
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun içeriğini sunmaya devam edecektir. Yani, dosya silinmiş ve artık
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun dosya sisteminde görünmüyor olsa bile httpd durdurulup dosya
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun tanıtıcıları kapanmadıkça dosyaların silinmesiyle açılan yer serbest
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun kalmayacaktır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <section id="inmemory">
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title>Sistem Belleğinde Önbellekleme</title>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>İçeriğin sistem belleğinden sunulması içerik sunmanın evrensel olarak
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun en hızlı yoludur. Dosyaların bir disk denetleyiciden okunması ya da daha
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun kötüsü uzak bir ağdan okunması bellekten okumayla karşılaştırılamayacak
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun ölçüde yavaş işlemlerdir. Disk denetleyiciler genellikle fiziksel
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun süreçleri denetlerler. Ağ erişimi ise band genişliği sınırlamalarından
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun etkilenir. Halbuki bellek erişimi sadece nano saniyeler mertebesinde
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun gerçekleşir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Sistem belleği en pahalı saklama ortamı olması sebebiyle en verimli
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun şekilde kullanımı önemlidir. Dosyaları sistem belleğinde saklamakla
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sistemin kullanabileceği bellek miktarını azaltmış olursunuz. İşletim
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sistemi önbelleklemesinde göreceğiniz gibi bu öyle basit bir konu
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun değildir. httpd’nin kendi kullandığı belleğin bir kısmını önbellek
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun olarak ayırırken çok fazla bellek kullanmamak önemlidir. Aksi takdirde
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun işletim sistemi belleğin yetmediği noktada belleği diske
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun takaslayacağından istenen başarım artışı sağlanamayacaktır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title>İşletim Sistemi Önbelleklemesi</title>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Günümüz iştetim sistemlerinin hemen hemen tamamında bellek içi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun dosya/veri saklama işlemlerini çekirdek yönetir. Bu güçlü bir
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun özelliktir ve işletim sistemlerinin büyük çoğunluğu bunu böyle yapar.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun Örneğin, Linux’ta bir dosyanın ilk defa okunduğunda ve ikinci kez
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun okunduğunda işlemcinin ne kadar meşgul edildiğine bakalım:</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <example>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun colm@coroebus:~$ time cat testfile &gt; /dev/null<br />
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun real 0m0.065s<br />
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun user 0m0.000s<br />
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sys 0m0.001s<br />
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun colm@coroebus:~$ time cat testfile &gt; /dev/null<br />
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun real 0m0.003s<br />
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun user 0m0.003s<br />
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sys 0m0.000s
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </example>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Küçük bir dosya için bile okuma süresi bakımından büyük fark ortaya
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun çıkmaktadır. Bunun sebebi çekirdeğin dosya içeriğini bellek daha
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun güncel amaçlar için lazım olana dek bellek içinde saklamasıdır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Sisteminizde yeterince yedek bellek olduğundan eminseniz, bu
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbellekte daha fazla dosya saklanacağından emin olabilirsiniz.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun Bundan, önbelleğin sistem belleğinde verimli biçimde tutulması için
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun httpd’de ek bir yapılandırmaya gidilmesinin gerekmediği sonucu
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun çıkarılabilir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Bundan başka, işletim sistemi dosyaların değiştiği ve silindiği
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun zamanları bildiğinden bu tür dosyaların içerikleri gerektiğinde
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbellekten kendiliğinden silinmiş olur. Bellek içinde dosya
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun saklarken dosyaların değiştirilme zamanlarını bilme olanağı
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun olmadığından bu durum httpd’ye büyük yarar sağlar.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>İşletim sisteminin dosyaların önbelleklenmesi için sağladığı bunca
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yarara ve başarım artışına karşın bellek içinde dosya önbelleklemenin
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun httpd tarafından yerine getirilmesinin daha iyi olacağı bazı durumlar
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun vardır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title><code>MMapFile</code> yönergesi ile</title>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p><module>mod_file_cache</module> modülü, bir durağan dosyanın
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun içeriğini sunucunun başlatılması sırasında (mmap sistem çağrısıyla)
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun belleğe eşlenmesini mümkün kılmak için <directive
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun module="mod_file_cache" >MMapFile</directive> yönergesini sağlar.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun httpd bu dosyaya gelecek sonraki istekler için dosyanın bellekiçi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun içeriğini kullanacaktır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <example>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun MMapFile /usr/local/apache2/htdocs/index.html
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </example>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p><directive module="mod_file_cache">CacheFile</directive>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yönergesinde olduğu gibi bu dosyalarda httpd başlatıldıktan sonra
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yapılacak bir değişiklikten httpd’nin haberi olmayacaktır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p><directive module="mod_file_cache">MMapFile</directive> yönergesi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun ayırdığı belleğin toplam miktarı ile ilgilenmez, dolayısıyla
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yönergenin aşırı kullanımından kaçınmalısınız. httpd’nin çocuk
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun süreçlerinin her biri bu belleğin kendilerine ait birer kopyasını
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yapacağından belleğe eşlenen dosyaların çok yer kaplamaması büyük
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önem taşımaktadır; aksi takdirde işletim sistemi belleği diske
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun takaslayacağından beklenen fayda sağlanamayacaktır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <section id="security">
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title>Güvenlik Kaygıları</title>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title>Erişim Denetimi ve Yetkilendirme</title>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p><directive module="mod_cache">CacheQuickHandler</directive>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yönergesine <code>On</code> değerinin atandığı öntanımlı durumda
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_cache</module> kullanımı, daha çok sunucunun önüne
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun vidalanmış önbelleklemeli bir karşı vekile sahip olmak gibidir. Özgün
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sunucunun bir harici önbellekmiş gibi sorgulanmasını gerektirmeyen tüm
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun istekler önbellekleme modülü tarafından karşılanacaktır. Bu durum
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun httpd'nin güvenlik modelini büyük ölçüde değiştirir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Olası <code>.htaccess</code> dosyalarının dosya sisteminin tamamında
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun taranması çok pahalı bir işlem olduğundan <module>mod_cache</module>,
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun (işlemi hızlandırmak için) önbelleğe almanın temel amacını kısmen
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun gözardı ederek, önbellekteki içeriğin sunumu için gerekli
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yetkilendirmenin olup olmadığı konusunda bir karar üretmez. Başka bir
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun deyişle, eğer <module>mod_cache</module> bir kısım içeriği önbelleğe
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun almışsa içerik zaman aşımına uğramadığı sürece bu içerik önbellekten
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun sunulacaktır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Örneğin, yapılandırmanız bir özkaynağa IP adresine göre erişime izin
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun veriyorsa bu içeriğin önbelleğe alınmayacağından emin olmalısınız.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun Bunu <directive module="mod_cache">CacheDisable</directive>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yönergesini veya <module>mod_expires</module> modülünü kullanarak
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yapabilirsiniz. Bunu yapmaz, olayı kendi haline bırakırsanız
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_cache</module> bir karşı vekil gibi çalışarak sunulan her
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun içeriği önbelleğe alacak ve hangi IP adresinden gelirse gelsin her
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun istemciye bunu sunacaktır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p><directive module="mod_cache">CacheQuickHandler</directive>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yönergesine <code>Off</code> atandığı takdirde, istek işleme
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun aşamalarının tamamı yerine getirilir ve güvenlik modeli değişmeden
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun kalır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title>Yerel İstismarcılar</title>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Son kullanıcılarıın isteklerine önbellekten hizmet sunulduğundan
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbelleğin kendisi içerikle etkileşime geçmek isteyenlerin veya
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun içeriği tahrif etmek isteyenlerin hedefi haline gelebilir. httpd’yi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun çalıştıran kullanıcı tarafından her zaman önbelleğe yazılabileceğini
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun akıldan çıkarmamak önemlidir. Bu durumda alışılmışın tersine tüm
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun içeriğin Apache kullanıcısı tarafından yazılamamasının sağlanması
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önerilir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Eğer Apache kullanıcısı, örneğin bir CGI sürecindeki açık nedeniyle
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun tehlikeye atılırsa, önbellek hedef alınabilir.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_cache_disk</module> kullanılırken önbellekteki bir öğeyi
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun değiştirmek veya önbelleğe yeni bir öğe eklemek görece daha
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun kolaydır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Bu risk, Apache kullanıcısını kullanan diğer saldırı türleriyle
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun karşılaştırıldığında daha yüksektir. <module>mod_cache_disk</module>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun kullanıyorsanız şunları aklınızdan çıkarmayın: (1) httpd güvenlik
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun güncellemelerini takip edin ve sunucunuzu buna göre güncelleyin. (2)
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun Mümkünse <a href="suexec.html">suEXEC</a> kullanarak CGI süreçlerini
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun Apache kullanıcısı olmayan bir kullanıcının aidiyetinde çalıştırın.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title>Önbellek Zehirlenmeleri</title>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>httpd bir önbellekli vekil sunucu olarak çalıştığında önbellek
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun zehirlenmesi adı verilen sorunla karşılaşılma olasılığı vardır.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun Önbellek zehirlenmesi, vekil sunucunun özgün sunucudan yanlış (ve
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun genellikle istenmeyen) içerik almasına sebep olan bir saldırı türünü
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun betimlemek için yaygın olarak kullanılan bir terimdir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Örneğin httpd’nin çalıştığı sistemin kullandığı DNS sunucuları DNS
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbellek zehirlenmesinden etkilenebilecek durumdaysa, bir saldırgan
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun httpd’nin istekleri almak için başvuracağı kaynak sunucunun yerini
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun değiştirebilir. Diğer bir örnek, HTTP istek kaçakçılığı adı verilen
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun bir saldırı türüdür.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Bu belge HTTP istek kaçakçılığını derinliğine incelenmesi için uygun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yer değildir (böyle kaynaklara arama motorunuzla erişebilirsiniz).
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun Bununla birlikte, vekil tarafından kaynak sunucudan alınan içeriği
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun tamamen denetim altına almak amacıyla kaynak sunucudaki bir açığı
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun istismar etmeye yönelik bir dizi istek yapılabileceğinin olasılık
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun dahilinde olduğunu bilmenizde yarar vardır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <section>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <title>Hizmet Reddi / Önbelleğin Engellenmesi</title>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Vary mekanizması aynı URL'nin çok sayıda sürümünün yan yana
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbelleklenmesini mümkün kılar. İstemci tarafından sağlanan başlık
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun değerlerine bağlı olarak, önbellek istemciye gönderilecek doğru yanıtı
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun bulacaktır. Normal kullanımda olası değerlerin çok geniş olduğunun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun bilindiği durumda bir başlığı (örn, <code>User-Agent</code>)
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun değişikliğe uğratma çabası bu mekanizmayı bir sorun haline getirebilir.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun Sitenin tanınırlığına bağlı olarak aynı URL'nin binlerce hatta
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun milyonlarca önbellek girdisi oluşabilir ve bunlar önbellekteki diğer
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun girdilerin yerini alabilir.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <p>Diğer yandan, belli bir özkaynağın URL'sinin her istekte
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun değiştirilmesi ihtiyacı ortaya çıkabilir. Bu normalde URL dizgesine bir
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun "cachebuster" dizgesi eklenerek yapılır. Bu içerik sunucu tarafından
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun anlamlı bir tazelik ömrüyle önbelleklenebilir olarak imlenmişse bu
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun girdiler kısa zamanda önbellekteki meşru girdilerin yerini alabilir.
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun <module>mod_cache</module> modülü bunun önlenmesi için <directive
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun module="mod_cache">CacheIgnoreURLSessionIdentifiers</directive>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun yönergesine sahipse de bu yönerge, yoldaki vekillerin veya tarayıcı
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun önbelleklerinin aynı hizmet reddi saldırısına maruz kalmamaları için
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun dikkatle kullanılmalıdır.</p>
7fdd79a6e3620562e4f9062ed5cec77bedc06c67nilgun </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi </section>
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi
7927661fe7cf1c0c2eac0e9b1d146c2a2f6eb4eftakashi</manualpage>