Apache HTTP Sunucusu

Apache HTTP Server, often called Apache, is a free and open-source cross-platform web server software that delivers web content to users via HTTP/S protocols, p...

Yaygın olarak Apache olarak bilinen Apache HTTP Sunucusu, HTTP/S üzerinden web içeriği sunan ücretsiz ve açık kaynaklı, çapraz platform web sunucusu yazılımıdır. Apache Yazılım Vakfı tarafından geliştirilen ve sürdürülen bu yazılım, dünyanın en eski ve en yaygın kullanılan web sunucularından biridir. Apache, belirli bir portta (genellikle HTTP için 80, HTTPS için 443) gelen HTTP isteklerini dinleyerek çalışır. Bir istek geldiğinde, Apache yapılandırma dosyalarına (öncelikle httpd.conf ve ondan dahil edilen dosyalar) göre isteği işler. mod_php, mod_wsgi veya mod_proxy gibi modüller aracılığıyla arka uç uygulamaları veya betiklerle etkileşim kurarak statik dosyaları doğrudan dosya sisteminden sunabilir veya dinamik olarak içerik oluşturabilir. Apache'nin mimarisi modülerdir, bu da yöneticilerin modülleri yükleyerek veya kaldırarak özellikleri etkinleştirmesine veya devre dışı bırakmasına olanak tanır. Temel işlevler arasında sanal ana bilgisayarları (tek bir sunucudan birden fazla web sitesi sunma), erişim kontrolünü yönetme, kimlik doğrulama ve yetkilendirme uygulama, istekleri kaydetme ve güvenli bağlantılar için SSL/TLS şifrelemesini destekleme yer alır. Eşzamanlı bağlantıları işlemek için işlem tabanlı veya iş parçacığı tabanlı bir çoklu işlem modülü (MPM) kullanır; yaygın MPM'ler arasında prefork (işlem tabanlı), worker (hibrit) ve event (keep-alive bağlantıları için optimize edilmiş) bulunur. Esnekliği, kapsamlı belgeleri ve geniş topluluk desteği, kalıcı popülaritesine katkıda bulunmuştur.

        graph LR
  Center["Apache HTTP Sunucusu"]:::main
  Rel_rest_apis["rest-apis"]:::related -.-> Center
  click Rel_rest_apis "/terms/rest-apis"
  Rel_css3["css3"]:::related -.-> Center
  click Rel_css3 "/terms/css3"
  Rel_typescript["typescript"]:::related -.-> Center
  click Rel_typescript "/terms/typescript"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧒 5 yaşındaki gibi açıkla

Apache, internet için süper hızlı bir garson gibidir; bilgisayarınız bir web sayfası istediğinde, Apache onu hızla bulur ve size geri getirir.

🤓 Expert Deep Dive

Apache'nin Çoklu İşlem Modülleri (MPM'ler), eşzamanlılık işleme stratejisinin merkezindedir. prefork MPM, istekleri izole ederek kararlılık sunan ancak daha fazla bellek tüketen, iş parçacığı olmayan, önceden çatallanmış bir işlem modeli kullanır. worker MPM, her bir alt işlem içinde birden fazla iş parçacığı kullanır, performansı artırır ve bellek ayak izini azaltır ancak potansiyel iş parçacığı güvenliği sorunları ortaya çıkarır. worker'ın bir evrimi olan event MPM, yeni bağlantıları kabul etmek için dinleyici iş parçacıkları ayırırken, aktif istekleri işleyen işçi iş parçacıkları ile keep-alive HTTP bağlantıları için optimize edilmiştir, bu da yüksek yük altında ölçeklenebilirliği önemli ölçüde iyileştirir. Apache'nin dinamik olarak yüklenebilir modüller (DLM'ler) aracılığıyla genişletilebilirliği, derin özelleştirmeye olanak tanır, ancak modül uyumluluğu ve potansiyel çakışmalar dikkatli yönetim gerektirir. Yapılandırma sistemi güçlü olsa da, özellikle çok sayıda sanal ana bilgisayar ve karmaşık erişim kontrol kurallarına sahip büyük dağıtımlarda karmaşık hale gelebilir. Güvenlik, Require ve Allow/Deny gibi yönergelerle yönetilir ve sağlam günlük kaydı yetenekleri izleme ve hata ayıklama için esastır.

📚 Kaynaklar