<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="tr" xml:lang="tr"><head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
<!--
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
              This file is generated from xml source: DO NOT EDIT
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -->
<title>Apache HTTP Sunucusu 2.0’da Yeni olan Özellikler - Apache HTTP Sunucusu Sürüm 2.4</title>
<link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="./style/css/prettify.css" />
<script src="./style/scripts/prettify.min.js" type="text/javascript">
</script>

<link href="./images/favicon.ico" rel="shortcut icon" /></head>
<body id="manual-page"><div id="page-header">
<p class="menu"><a href="./mod/">Modüller</a> | <a href="./mod/directives.html">Yönergeler</a> | <a href="http://wiki.apache.org/httpd/FAQ">SSS</a> | <a href="./glossary.html">Terimler</a> | <a href="./sitemap.html">Site Haritası</a></p>
<p class="apache">Apache HTTP Sunucusu Sürüm 2.4</p>
<img alt="" src="./images/feather.png" /></div>
<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Sunucusu</a> &gt; <a href="http://httpd.apache.org/docs/">Belgeleme</a> &gt; <a href="./">Sürüm 2.4</a></div><div id="page-content"><div id="preamble"><h1>Apache HTTP Sunucusu 2.0’da Yeni olan Özellikler</h1>
<div class="toplang">
<p><span>Mevcut Diller: </span><a href="./de/new_features_2_0.html" hreflang="de" rel="alternate" title="Deutsch">&nbsp;de&nbsp;</a> |
<a href="./en/new_features_2_0.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="./fr/new_features_2_0.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
<a href="./ja/new_features_2_0.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
<a href="./ko/new_features_2_0.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="./pt-br/new_features_2_0.html" hreflang="pt-br" rel="alternate" title="Português (Brasil)">&nbsp;pt-br&nbsp;</a> |
<a href="./tr/new_features_2_0.html" title="Türkçe">&nbsp;tr&nbsp;</a></p>
</div>

  <p>Bu belgede Apache HTTP Sunucusunun 1.3 ve 2.0 sürümleri arasındaki
    başlıca değişikliklerin bazılarına değinilmiştir.</p>
</div>
<div id="quickview"><a href="https://www.apache.org/foundation/contributing.html" class="badge"><img src="https://www.apache.org/images/SupportApache-small.png" alt="Support Apache!" /></a><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#core">Çekirdekteki Gelişmeler</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#module">Modüllerdeki Gelişmeler</a></li>
</ul><h3>Ayrıca bakınız:</h3><ul class="seealso"><li><a href="upgrading.html">1.3’ten 2.0’a Yükseltme</a></li><li><a href="#comments_section">Yorumlar</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="core" id="core">Çekirdekteki Gelişmeler</a></h2>
    

    <dl>
      <dt>Unix Evreleri</dt>

      <dd>POSIX evreleri desteği olan Unix sistemlerinde Apache httpd, çok evreli
        kipte çok süreçlilik şeklinde melez bir yapıda çalışır. Bu bir çok
        bakımdan ölçeklenebilirliği arttırsa da bütün yapılandırmalarda
        sağlanamaz.</dd>

      <dt>Yeni Paket Derleme Sistemi</dt>

      <dd>Yeni kaynak paketi derleme sistemi <code>autoconf</code> ve
        <code>libtool</code>’a dayalı olarak sıfırdan, yeni baştan yazıldı.
        Böylece Apache httpd’nin paket yapılandırma sistemi diğer paketlerinkiyle
        benzerlik kazanmış oldu.</dd>

      <dt>Çok Sayıda Protokol Desteği</dt>

      <dd>Apache HTTP Sunucusu artık çok sayıda protokol ile hizmet sunacak bir
        alt yapıya sahiptir. Örneğin, <code class="module"><a href="./mod/mod_echo.html">mod_echo</a></code> modülü bu
        amaçla yazılmıştır.</dd>

      <dt>Unix dışı platformalara daha iyi destek</dt>

      <dd>Apache HTTP Sunucusu 2.0 sürümleri,  BeOS, OS/2, Windows gibi Unix olmayan
        platformlarda daha hızlı ve daha kararlı çalışacak duruma
        getirilmiştir. Genelde iyi geliştirilmemiş olan dolayısıyla istenen
        başarımı sağlayamayan POSIX taklit katmanlarının kullanımından
        vazgeçilmiş, platforma özgü <a href="mpm.html">çok süreçlilik
        modülleri</a> (MPM) ve Apache Taşınabilirlik Arayüzü (APR) sayesinde
        bu platformlar artık kendi doğal programlama arayüzleriyle
        gerçeklenir olmuştur.</dd>

      <dt>Yeni Apache httpd Programlama Arayüzü</dt>

      <dd>Modüller için kullanılan programlama arayüzü 2.0 sürümüyle önemli
        değişikliklere uğramıştır. 1.3 sürümünde görülen modüllerle ilgili
        sıralama/öncelik sorunlarının çoğu giderilmiştir. 2.0 sürümü bu
        işlemleri daha bir özdevimli yapar olmuştur; daha fazla esneklik
        sağlamak için artık kancalı modül sıralaması kullanılabilmektedir.
        Ayrıca, arayüze, Apache HTTP Sunucususu çekirdeğini yamamaya gerek kalmadan
        modüllerle sunucu yeteneklerinin arttırılabilmesini sağlayan yeni
        çağrılar eklenmiştir.</dd>

      <dt>IPv6 Desteği</dt>

      <dd>IPv6’nın Apache Taşınabilirlik Arayüzü kütüphanesi tarafından
        desteklendiği sistemlerde Apache httpd öntanımlı olarak IPv6 soketlerini
        dinler. Bundan başka, <code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code>, <code class="directive"><a href="./mod/core.html#namevirtualhost">NameVirtualHost</a></code> ve <code class="directive"><a href="./mod/core.html#virtualhost">VirtualHost</a></code> yönergelerinin IPv6 sayısal adres
        dizgelerini desteklemesi sağlanmıştır.<br />Örnek: <code>Listen
        [2001:db8::1]:8080</code></dd>

      <dt>Süzme</dt>

      <dd>Apache httpd modülleri, artık, sunucuya teslim edilen veya sunucudan
        teslim alınan içerik akımları üzerinde süzgeç gibi davranacak şekilde
        yazılabilmektedir. Bu sayede, örneğin CGI betiklerinin çıktılarının
        <code class="module"><a href="./mod/mod_include.html">mod_include</a></code> modülünün <code>INCLUDES</code> süzgeci
        kullanılarak SSI yönergeleri için çözümlenmesi mümkündür. CGI
        programlarının birer eylemci olarak davranması gibi,
        <code class="module"><a href="./mod/mod_ext_filter.html">mod_ext_filter</a></code> modülü de harici programların birer
        süzgeç olarak davranabilmesini mümkün kılar.</dd>

      <dt>Çok Dilli Hata Yanıtları</dt>

      <dd>Hata yanıtlarının tarayıcılara yönelik iletileri artık SSI
        belgeleri kullanılarak çeşitli dillerde sağlanabilmektedir. Bunlar
        ayrıca yönetici tarafından görünüş ve kullanışlılık tutarlılığı
        bakımından kişiselleştirilebilmektedir.</dd>

      <dt>Basitleştirilmiş Yapılandırma</dt>

      <dd>Bazı yönergelerle ilgili kafa karışıklıkları giderilmiştir.
        Bilhassa belli bir IP adresini dinlemek için kullanılan
        <code>Port</code> ve <code>BindAddress</code> yönergeleri ile ilgili
        karışıklığın önüne geçmek için sadece <code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code> yönergesi yeterli olmaktadır. <code class="directive"><a href="./mod/core.html#servername">ServerName</a></code> yönergesi ise sadece yönlendirme
        ve sanal konak tanıma amacıyla sunucu ismi ve port belirtiminde
        kullanılmaktadır.</dd>

      <dt>Doğal Windows NT Unicode Desteği</dt>

      <dd>Apache httpd 2.0, Windows NT üzerinde artık tüm dosya sistemi
        kodlamalarında utf-8 kullanmaktadır. Bu destek, Windows 2000 ve
        Windows XP dahil tüm Windows NT temelli sistemlere çok dillilik
        desteğini sağlamak üzere mevcut Unicode dosya sistemine doğrudan
        uyarlanır. <em>Dosya sisteminde makinenin yerel karakter kodlamasını
        kullanan kullanan Windows 95, 98 ve ME için bu destek
        yoktur.</em></dd>

      <dt>Düzenli İfade Kütüphanesi Güncellemesi</dt>

      <dd>Apache httpd 2.0’da <a href="http://www.pcre.org/">Perl uyumlu düzenli
        ifade kütüphanesi</a> bulunur. Tüm düzenli ifadelerde artık çok daha
        güçlü olan Perl 5 sözdizimi kullanılmaktadır.</dd>

    </dl>
  </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="module" id="module">Modüllerdeki Gelişmeler</a></h2>
    

    <dl>
      <dt><code class="module"><a href="./mod/mod_ssl.html">mod_ssl</a></code></dt>

      <dd>Apache httpd 2.0’da yeni olan bu modül,  OpenSSL tarafından sağlanan
        SSL/TLS şifreleme protokollerine bir arayüzdür.</dd>

      <dt><code class="module"><a href="./mod/mod_dav.html">mod_dav</a></code></dt>

      <dd>Apache httpd 2.0’da yeni olan bu modül, site içeriğinin destek ve bakımı
        için HTTP dağıtık yazım ve sürüm yönetimi (DAV - Distributed
        Authoring and Versioning) belirtimini gerçekler.</dd>

      <dt><code class="module"><a href="./mod/mod_deflate.html">mod_deflate</a></code></dt>

      <dd>Apache httpd 2.0’da yeni olan bu modül sayesinde ağ band genişliğinden
        daha verimli yararlanabilmek için içeriğin sıkıştırılarak
        gönderilmesini talep eden tarayıcıların desteklenmesi mümkün
        olmuştur.</dd>

      <dt><code class="module">mod_auth_ldap</code></dt>

      <dd>Apache httpd 2.0.41’de yeni olan bu modül, HTTP temel kimlik
        doğrulamasında kullanılan delillerin saklanması için LDAP
        veritabanının kullanılabilmesini mümkün kılar. Kardeş modülü olan
        <code class="module"><a href="./mod/mod_ldap.html">mod_ldap</a></code> ise bağlantı havuzlaması ve sonuçların
        önbelleğe alınması ile ilgilenir.</dd>

      <dt><code class="module"><a href="./mod/mod_auth_digest.html">mod_auth_digest</a></code></dt>

      <dd>Paylaşımlı belleği kullanan süreçlere karşı oturum önbelleklemesi
        için ek destek içerir.</dd>

      <dt><code class="module"><a href="./mod/mod_charset_lite.html">mod_charset_lite</a></code></dt>

      <dd>Apache httpd 2.0’da yeni olan bu deneysel modül, karakter kümesi
        dönüşümleri veya kaydı için destek sağlar.</dd>

      <dt><code class="module"><a href="./mod/mod_file_cache.html">mod_file_cache</a></code></dt>

      <dd>Apache httpd 2.0’da yeni olan bu modül, Apache HHP Sunucusu 1.3’teki
        <code>mod_mmap_static</code> modülünün işlevselliğini içermenin
        yanında buna önbellekleme yetenekleri de ekler.</dd>

      <dt><code class="module"><a href="./mod/mod_headers.html">mod_headers</a></code></dt>

      <dd>Bu modül Apache httpd 2.0’da daha esnek hale getirilmiştir. Artık
        <code class="module"><a href="./mod/mod_proxy.html">mod_proxy</a></code> tarafından kullanılan istek başlıkları
        değiştirilebilmekte ve bunlar yanıt başlıklarına şartlı olarak
        atanabilmektedir.</dd>

      <dt><code class="module"><a href="./mod/mod_proxy.html">mod_proxy</a></code></dt>

      <dd>Bu modül HTTP/1.1 uyumlu vekaleti daha güvenilir kılmak ve yeni
        süzgeç alt yapısının getirilerinden de yararlanmak amacıyla yeni
        baştan yazılmıştır. Bunun yanında, <code class="directive"><a href="./mod/mod_proxy.html#proxy">&lt;Proxy&gt;</a></code> bölümünün yeni hali vekil siteleri
        desteklemek bakımından daha okunabilir (ve kendi içinde daha hızlı)
        olması sağlanmıştır; <code>&lt;Directory "proxy:..."&gt;</code>
        yapılandırması artık desteklenmemektedir. Modül,
        <code>proxy_connect</code>, <code>proxy_ftp</code> ve
        <code>proxy_http</code> şeklinde her biri belli bir protokolü
        destekleyen ayrı modüllere bölünmüştür.</dd>

      <dt><code class="module"><a href="./mod/mod_negotiation.html">mod_negotiation</a></code></dt>

      <dd>Yeni <code class="directive"><a href="./mod/mod_negotiation.html#forcelanguagepriority">ForceLanguagePriority</a></code> yönergesi sayesinde istemciye
        “Kabul edilebilir bir gösterim çeşidi yok” ya da “Çok sayıda seçim
        belirtilmiş” yanıtını döndürmek yerine tüm durumlara uyan bir
        sayfanın gönderilebilmesi sağlanmıştır. Bundan başka, uzlaşım ve
        <code>MultiViews</code> algoritmaları daha tutarlı sonuçlar elde
        etmek amacıyla elden geçirilmiş ve belge içeriği ile daha iyi eşleşen
        yeni bir tür eşlem yapısı sağlanmıştır.</dd>

      <dt><code class="module"><a href="./mod/mod_autoindex.html">mod_autoindex</a></code></dt>

      <dd>Dizin içeriklerinin özdevimli listelenmesi artık HTML tabloları
        kullanılacak şekilde yapılandırılabilmektedir. Böylece sayfa daha iyi
        biçemlenebilmekte, içerik daha hassas sıralanabilmekte, sürüm
        numarasına göre sıralama yapılabilmekte ve dosya ismi kalıpları
        kullanılarak sadece istenen içerik listelenebilmektedir.</dd>

      <dt><code class="module"><a href="./mod/mod_include.html">mod_include</a></code></dt>

      <dd>Yeni yönergeler, değiştirilecek SSI elemanları için öntanımlı
        başlangıç ve bitiş etiketlerine izin vermekte, hataların ve zaman
        biçemleme yapılandırmalarının SSI belgesinde değil ana yapılandırma
        dosyasında bulunması mümkün olmaktadır. Düzenli ifadelerin gruplanmış
        sonuçları (Perl düzenli ifade sözdizimi kullanılmaktadır)
        <code class="module"><a href="./mod/mod_include.html">mod_include</a></code> modülünün <code>$0</code> ..
        <code>$9</code> değişkenleri sayesinde kullanılabilmektedir.</dd>

      <dt><code class="module">mod_auth_dbm</code></dt>

      <dd><code class="directive">AuthDBMType</code> yönergesi
        sayesinde artık çok sayıda DBM tarzı veritabanı türü
        desteklenmektedir.</dd>
    </dl>
  </div></div>
<div class="bottomlang">
<p><span>Mevcut Diller: </span><a href="./de/new_features_2_0.html" hreflang="de" rel="alternate" title="Deutsch">&nbsp;de&nbsp;</a> |
<a href="./en/new_features_2_0.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="./fr/new_features_2_0.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
<a href="./ja/new_features_2_0.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
<a href="./ko/new_features_2_0.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="./pt-br/new_features_2_0.html" hreflang="pt-br" rel="alternate" title="Português (Brasil)">&nbsp;pt-br&nbsp;</a> |
<a href="./tr/new_features_2_0.html" title="Türkçe">&nbsp;tr&nbsp;</a></p>
</div><div class="top"><a href="#page-header"><img src="./images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Yorumlar</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Libera.chat, or sent to our <a href="https://httpd.apache.org/lists.html">mailing lists</a>.</div>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/2.4/new_features_2_0.html';
(function(w, d) {
    if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
        d.write('<div id="comments_thread"><\/div>');
        var s = d.createElement('script');
        s.type = 'text/javascript';
        s.async = true;
        s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
        (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
    }
    else { 
        d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
    }
})(window, document);
//--><!]]></script></div><div id="footer">
<p class="apache">Copyright 2021 The Apache Software Foundation.<br /><a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a> altında lisanslıdır.</p>
<p class="menu"><a href="./mod/">Modüller</a> | <a href="./mod/directives.html">Yönergeler</a> | <a href="http://wiki.apache.org/httpd/FAQ">SSS</a> | <a href="./glossary.html">Terimler</a> | <a href="./sitemap.html">Site Haritası</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
    prettyPrint();
}
//--><!]]></script>
</body></html>