Apache HTTP Sunucusu Sürüm 2.4

Bu belgede Apache HTTP Sunucusunun 2.0 ve 2.2 sürümleri arasındaki başlıca farklara değinilmiştir. 1.3 sürümüne göre yeni özellikler için Apache 2.0’da Yeni olan Özellikler belgesine bakınız.

 Çekirdekteki Gelişmeler
 Çekirdekteki Gelişmeler Modüllerdeki Gelişmeler
 Modüllerdeki Gelişmeler Programlardaki Gelişmeler
 Programlardaki Gelişmeler Modül Geliştirici Değişiklikleri
 Modül Geliştirici Değişikliklerimod_authn_alias modülü
        (2.3/2.4 sürümlerinde kaldırılmıştır) belli kimlik doğrulama
        yapılandırmalarını büyük oranda basitleştirebilir. Bu değişikliklerin
        kullanıcıları ve modül yazarlarını nasıl etkilediğini öğrenmek için
        modül değişikliklerine ve geliştirici değişikliklerine bakabilirsiniz.mod_cache, mod_cache_disk ve
        mod_mem_cache (2.3/2.4 sürümlerinde kaldırılmıştır)
        modüllerinde büyük oranda değişikliğe gidilerek bunlar deneysel
        olmaktan çıkarılıp üretim amaçlı modüller haline getirildiler.
        mod_cache_disk tarafından kullanılan disk
        alanının  htcacheclean tarafından
        düzenli aralıklarla temizlenebilmesi sağlandı.prefork, worker ve
        event  MPM’leri artık httpd’yi graceful-stop
        sinyali sayesinde nazikçe durdurabilmektedir.
        httpd programının sonlandırılmasındaki gecikmelere
        karşı bir önlem olarak, isteğe bağlı bir zaman aşımı belirtmeyi
        mümkün kılan GracefulShutdownTimeout yönergesi
        sayesinde sunum sürüyor olsa bile httpd
        sonlandırılabilmektedir.mod_proxy_balancer modülü ile
        mod_proxy için yük dengeleme hizmetleri sağlanmış,
        yeni mod_proxy_ajp modülü ile Apache Tomcat tarafından
        kullanılan Apache JServ Protokolünün 1.3 sürümü için destek
        eklenmiştir.configure betiğinin --with-pcre
        seçeneği sayesinde httpd programı PCRE destekli
        olarak derlenebilmektedir.mod_filter çıktı süzgeç zincirinin devingen olarak
        yapılandırılmasını sağlar. Süzgeçlerin herhangi bir istek veya yanıt
        başlığına veya bir ortam değişkenine dayanarak koşullu olarak
        yerleştirilmesini mümkün kılar ve bunu yaparken 2.0 mimarisindeki
        sorunlu bağımlılıklar ve sıralama sorunlarının da üstesinden
        gelir.httpd artık günümüzün 32 bitlik Unix
        sistemlerinde bulunan 2 GB’lık büyük dosyaları destekleyecek tarzda
        derlenebilmektedir. 2 GB’lık istek gövdelerine destek de ayrıca
        eklenmiştir.event MPM modülü sürekli bağlantı isteklerinin
        işlenmesi ve bağlantıların kabul edilmesi için ayrı bir evre
        kullanır. Sürekli bağlantı (keepalive) isteklerinin işlenmesi
        geleneksel olarak httpd’nin buna bir worker
        adamasını gerektirirdi. Bu adanmış worker bağlantı
        zaman aşımına uğrayıncaya değin tekrar kullanılamazdı.mod_dbd modülü apr_dbd arayüzü ile
        birlikte, ihtiyacı olan modüllere SQL desteği sağlar. Evreli MPM’ler
        için bağlantı havuzlamasını destekler.mod_auth
        modülü şimdi mod_auth_basic ve
        mod_authn_file diye iki modüle bölünmüştür.;
        mod_auth_dbm modülünün ismi
        mod_authn_dbm ve mod_access  modülünün
        ismi de mod_authz_host olarak değiştirilmiştir.
        Ayrıca, belli kimlik doğrulama yapılandırmalarını basitleştirmek
        üzere mod_authn_alias diye yeni bir modül vardır
        (2.3/2.4 sürümlerinde kaldırılmıştır).
      mod_authnz_ldapmod_auth_ldap modülünün 2.2
        Authn/Authz arayüzüne bir uyarlamasıdır. Require yönergesine LDAP
        öznitelik değerlerinin ve karmaşık arama süzgeçlerinin kullanımı gibi
        yeni özellikler eklenmiştir.mod_authz_ownermod_versionmod_info?config parametresini
        ekler. Modül ayrıca, httpd -V’nin yaptığı gibi ek olarak
        derleme bilgisini ve tüm istek kancalarının sırasını da gösterir.mod_sslmod_imagemapmod_imap modülünün ismi yanlış anlamalara meydan
        vermemek için mod_imagemap olarak değiştirildi.httpd-M diye yeni bir komut satırı seçeneği eklendi.
        -l seçeneğinin aksine, bu seçenekle elde edilen liste
        mod_so üzerinden yüklenen DSO’ları içerir.httxt2dbmRewriteMap yönergesinde
        dbm eşlem türü ile kullanmak üzere metin girdilerden DBM
        dosyaları üretmek için kullanılan yeni bir program.APR ve
        APR-Util’den kaldırılmıştır. Ayrıntılar için APR Sitesine bakınız.mod_auth_*  -> HTTP kimlik doğrulamasını
            gerçekleştiren modüller.mod_authn_* -> Kimlik doğrulamasının artalanına
            destek sağlayan modüller.mod_authz_* -> Yetkilendirmeyi (veya erişimi)
            gerçekleştiren modüller.mod_authnz_* -> Kimlik doğrulama ve
            yetkilendirmeyi birlikte gerçekleştiren modüller.ap_log_cerror isminde yeni bir işlev eklendi. Böyle bir
        durumda günlük kaydı istemcinin IP adresini içermektedir.httpd’yi sadece -t
        seçeneği ile kullandığı takdirde özel kod icra edilmesini isteyen
        modüllere yardımcı olmak üzere test_config diye yeni bir
        kanca işlev eklendi.ThreadStackSize isminde yeni bir
        yönerge eklendi. Öntanımlı yığıt boyutunun küçük olduğu platformlarda
        bazı üçüncü parti modüller tarafından buna ihtiyaç duyulmaktadır.ap_register_output_filter_protocol veya
        ap_filter_protocol işlevi üzerinden
        mod_filter modülüne devredebilmektedir.pcreposix.h başlık dosyası artık yok; yerine
        ap_regex.h dosyası geçti. Eski başlık dosyasınca ifade
        olunan POSIX.2 regex.h gerçeklenimi şimdi
        ap_ isim alanı altında ap_regex.h başlık
        dosyasındadır. regcomp, regexec gibi
        işlevlerin yerine de artık ap_regcomp,
        ap_regexec işlevleri geçerlidir.Apache 1.x ve 2.0’da, modüller, SQL veritabanlarını kendileri yönetebilmek için sorumluluğu alacak bir SQL artalanına ihtiyaç duymaktadır. Her biri kendi bağlantısına sahip bir sürü modül olduğunda bu yöntem çok verimsiz olabilmektedir.
Apache 2.1 ve sonrasında veritabanı bağlantılarını (evreli olsun
        olmasın MPM’lerin eniyilenmiş stratejileri dahil) yönetmek için
        ap_dbd arayüzü kullanılmıştır. APR 1.2 ve sonrasında ise
        veritabanı ile etkileşim apr_dbd arayüzüyle
        sağlanmıştır.
Yeni modüllerin tüm SQL veritabanı işlemlerinde bu arayüzü kullanmaları ÖNERİlir. Mevcut uygulamaların uygulanabildiği takdirde hem kullanıcılarına önerilen bir seçenek olarak hem de şeffaf olarak kullanmak üzere kendilerini güncellemeleri ÖNERİir.