Apache > HTTP Sunucusu > Belgeleme >
Sürüm 2.4
Apache HTTP Sunucusu 2.0’da Yeni olan Özellikler
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.
- Unix Evreleri
- 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.
- Yeni Paket Derleme Sistemi
- Yeni kaynak paketi derleme sistemi
autoconf
ve libtool
’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.
- Çok Sayıda Protokol Desteği
- Apache HTTP Sunucusu artık çok sayıda protokol ile hizmet sunacak bir alt yapıya sahiptir. Örneğin,
mod_echo
modülü bu amaçla yazılmıştır.
- Unix dışı platformalara daha iyi destek
- 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ü çok süreçlilik modülleri (MPM) ve Apache Taşınabilirlik Arayüzü (APR) sayesinde bu platformlar artık kendi doğal programlama arayüzleriyle gerçeklenir olmuştur.
- Yeni Apache httpd Programlama Arayüzü
- 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.
- IPv6 Desteği
- 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,
Listen
, NameVirtualHost
ve VirtualHost
yönergelerinin IPv6 sayısal adres dizgelerini desteklemesi sağlanmıştır.
Örnek: Listen [2001:db8::1]:8080
- Süzme
- 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
mod_include
modülünün INCLUDES
süzgeci kullanılarak SSI yönergeleri için çözümlenmesi mümkündür. CGI programlarının birer eylemci olarak davranması gibi, mod_ext_filter
modülü de harici programların birer süzgeç olarak davranabilmesini mümkün kılar.
- Çok Dilli Hata Yanıtları
- 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.
- Basitleştirilmiş Yapılandırma
- Bazı yönergelerle ilgili kafa karışıklıkları giderilmiştir. Bilhassa belli bir IP adresini dinlemek için kullanılan
Port
ve BindAddress
yönergeleri ile ilgili karışıklığın önüne geçmek için sadece Listen
yönergesi yeterli olmaktadır. ServerName
yönergesi ise sadece yönlendirme ve sanal konak tanıma amacıyla sunucu ismi ve port belirtiminde kullanılmaktadır.
- Doğal Windows NT Unicode Desteği
- 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. Dosya sisteminde makinenin yerel karakter kodlamasını kullanan kullanan Windows 95, 98 ve ME için bu destek yoktur.
- Düzenli İfade Kütüphanesi Güncellemesi
- Apache httpd 2.0’da Perl uyumlu düzenli ifade kütüphanesi bulunur. Tüm düzenli ifadelerde artık çok daha güçlü olan Perl 5 sözdizimi kullanılmaktadır.
mod_ssl
- Apache httpd 2.0’da yeni olan bu modül, OpenSSL tarafından sağlanan SSL/TLS şifreleme protokollerine bir arayüzdür.
mod_dav
- 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.
mod_deflate
- 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.
mod_auth_ldap
- 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
mod_ldap
ise bağlantı havuzlaması ve sonuçların önbelleğe alınması ile ilgilenir.
mod_auth_digest
- Paylaşımlı belleği kullanan süreçlere karşı oturum önbelleklemesi için ek destek içerir.
mod_charset_lite
- Apache httpd 2.0’da yeni olan bu deneysel modül, karakter kümesi dönüşümleri veya kaydı için destek sağlar.
mod_file_cache
- Apache httpd 2.0’da yeni olan bu modül, Apache HHP Sunucusu 1.3’teki
mod_mmap_static
modülünün işlevselliğini içermenin yanında buna önbellekleme yetenekleri de ekler.
mod_headers
- Bu modül Apache httpd 2.0’da daha esnek hale getirilmiştir. Artık
mod_proxy
tarafından kullanılan istek başlıkları değiştirilebilmekte ve bunlar yanıt başlıklarına şartlı olarak atanabilmektedir.
mod_proxy
- 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,
<Proxy>
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; <Directory "proxy:...">
yapılandırması artık desteklenmemektedir. Modül, proxy_connect
, proxy_ftp
ve proxy_http
şeklinde her biri belli bir protokolü destekleyen ayrı modüllere bölünmüştür.
mod_negotiation
- Yeni
ForceLanguagePriority
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 MultiViews
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.
mod_autoindex
- 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.
mod_include
- 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)
mod_include
modülünün $0
.. $9
değişkenleri sayesinde kullanılabilmektedir.
mod_auth_dbm
AuthDBMType
yönergesi sayesinde artık çok sayıda DBM tarzı veritabanı türü desteklenmektedir.
Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.