Apache, adı Kuzey Amerika Kızılderililerinin Apache kabilesinin adıyla ilişkilendirilen İngilizce bir ifadeden gelen güçlü bir sunucudur. Rus kullanıcıları arasında "Apache" ortak bir adı vardır. Bu, GPL lisansına sahip açık kaynaklı bir yazılımdır. En büyük avantajlarından biri çapraz platform sunucusudur, yani mükemmel performansı korurken çeşitli işletim sistemlerinde çalışabilir.
1996'dan beri, bu, istikrarı ve güvenliği nedeniyle dünyanın en popüler sunucusudur. Apache, Apache Software Foundation tarafından yönetilen bir kullanıcı geliştiriciler topluluğu tarafından geliştirilmiştir.
Apache Tarihi
Mart 1989'da CERN'de (İsviçre) çalışan İngiliz bilim adamı Tim Berners Lee, CERN projelerindeki büyük miktardaki bilgiyi yönetmek için yeni bir yol önerdi. O zaman kimse Apache'nin ne olduğunu bilmiyordu. Ted Nelson'ın 1965'te adlandırdığı gibi, hiper bağlantılı belge ağının ilk gelişimi, WWW'nin yaratılmasına yol açtı.- Kasım 1990'da World Wide Web adı altında bir web tarayıcısı, grafik arayüzü ve WYSIWYG editörü ile piyasaya sürülen ilk yazılım. İki yıl sonra, WWW sunucuları listesinde aralarında HTTP NCSA'nın da bulunduğu yalnızca otuz kadar giriş vardı.
Gerçek Apache hikayesi Mart 1995'te NCSA HTTPD 1.3 sunucusuna dayalı Apache 0.2'nin piyasaya sürülmesiyle başlar. Birçok kullanıcı bugün Apache'nin ne olduğunu ve var olduğu ilk aylarda programın nasıl olduğunu bilmek istiyor. Sadece NCSA sunucusuna uygulanan bir dizi düzenlemeydi. Ardından Robert Thau, çok başarılı olduğu kanıtlanan modüller için API'lerle Shambhala 0.1'i piyasaya sürdü.
Projenin en büyük kilometre taşları, Nisan 1997'de sürüm 1.2 olarak dahil edilen HTTP 1.1 standardına tam uyumdu. Bu sürüm, Temmuz 1997'de başlatılan Windows NT platformunu zaten içeriyordu. Yapılandırma dosyalarının birleştirilmesi 1.3.3 sürümünde uygulandı.
Apache Group, web sunucusunun gelişiminden ve belirli geliştirme kararlarından sorumludur. Bu grup, çekirdek geliştiriciler - Çekirdek grubundan ayırt edilmelidir. Çoğu geliştiricinin gönüllü doğası, hepsinin aynı anda Apache'de aktif olmalarını olası kılmaz, bu nedenle, onu çalışır durumda tutmaktan çekirdek sorumludur. Genel olarak, geliştiricilerin vermesi gereken kararlar çekirdeğe aittir ve kodu içerecek oylarla sınırlıdır. Öte yandan, genellikle CVS deposuna yazma erişimine sahiptirler, bu nedenle koda ağ geçidi görevi görerek kodun doğru ve kaliteli olmasını sağlarlar.
Minimum gereksinimler vefaydalar
Apache web'de geniş çapta kabul gördü ve 1996'dan beri en yaygın kullanılan HTTP sunucusu oldu. Sunucunun dünya çapındaki sitelerin %70'i tarafından kullanıldığı 2005 yılında en yüksek pazar payına ulaştı. Son yıllarda pazar payı azaldı. Apache için böyle bir düşüşün teknolojinin popüler olmadığını ve bozulduğunu göstermemesi dikkat çekicidir.
Çalışma için minimum gereksinimler:
- İşlemci - Pentium.
- RAM - 64 MB.
- OS-Microsoft Windows, GNU/Linux.
- Yükleme boyutu - 50 MB.
Faydaları:
- Modüler tasarım.
- Açık kaynak.
- Çoklu platform tasarımı.
- Genişletilebilirlik.
- Popüler - yardım ve destek almak kolay.
Sunucu mimarisi
Apache modüler sunucusu, bir ana bölümden ve temel işlevlerin çoğunu sağlayan çeşitli modüllerden oluşur. Bu modüllerden bazıları:
- mod_ssl - TLS üzerinden güvenli iletişim;
- mod_rewrite - arama motorlarını nerede tasarlandıkları konusunda yanıltmak için php gibi dinamik sayfaları statik sayfalara dönüştürmek için yaygın olarak kullanılan adres yeniden yazma;
- mod_dav - WebDAV protokol desteği (RFC 2518);
- mod_deflate - içerik istemciye gönderildiğinde sıkıştırma algoritması şeffaftır;
- mod_auth_ldap - kullanıcıların bir LDAP sunucusunda kimlik doğrulaması yapmasına olanak tanır;
- mod_proxy_ajp -Java'daki Jakarta Tomcat dinamik sayfalarıyla iletişim kurmak için bağlayıcı (sunucu uygulamaları ve JSP).
Temel sunucu, aşağıdakiler dahil olmak üzere harici modülleri içerecek şekilde genişletilebilir:
- mod_cband - trafik kontrolü ve bant genişliği sınırlaması;
- mod_perl - Perl'de dinamik;
- mod_php - PHP'de dinamik;
- mod_python - Python'da dinamik;
- mod_rexx - REXX ve REXX nesnesinde dinamik;
- mod_ruby - Ruby'de dinamik;
- mod asp dot net - Microsoft. NET'te dinamik;
- mod_mono - dinamikten monoya;
- mod_security - güvenlik için uygulama düzeyinde filtreleme.
Yapılandırma ve güvenlik
Güvenlik açısından Apache'nin ne olduğunu anlamak için yapılandırmasını göz önünde bulundurmanız gerekir. Yapılandırmanın çoğu, yazılımın üzerinde çalıştığı sisteme bağlı olarak apache2.conf ve httpd.conf dosyalarında yapılır. Bu dosyada yapılacak herhangi bir değişiklik, sunucunun yeniden başlatılmasını veya yeniden okunmasını gerektirir.
Çekirdek Apache yazılımının dağıtıldığı yazılım lisansı, Apache HTTP Sunucusu ve açık kaynak topluluğu tarihinin ayırt edici özelliğidir. Lisans, açık ve kapalı kaynaklı ürünlerin dağıtımına izin verir.
Özgür Yazılım Vakfı, Apache Lisansının, yazılımın lisanslandığı ve yazılımla entegre olmadığı GNU Genel Kamu Lisansı'nın (GPL) 2. sürümüyle uyumlu olduğunu düşünmez. önce bu dikkate alınmalıGPL lisansı altında dağıtılan bir Apache web sunucusu kurun. Ancak GPL'nin 3. sürümü, patent tazminat hükümlerine sahip lisanslarla uyumlu olmasına izin veren bir hüküm içermektedir.
Keşfedilen ve düzeltilen güvenlik açıklarının çoğu, uzaktan değil, yalnızca yerel kullanıcılar tarafından kullanılabilir. Ancak, bazıları hala belirli durumlarda uzaktan çalışır. Veya kötü niyetli yerel kullanıcılar tarafından ücretsiz Apache web sunucusunun bir modülü olarak PHP kullanılarak paylaşılan barındırma anlaşmalarını ihlal etmek için kullanılıyorsa.
Apache'nin işleyişini kontrol etme
Apache'nin düzgün çalıştığından emin olmak için bir web tarayıcısı açın ve şu adresi yazın: https://localhost. Ardından Enter'a basın, web sunucusunun iyi çalıştığının kanıtı olan "Bu çalışıyor" mesajını içeren beyaz bir sayfa görünür.
Apache, özelleştirmek ve ihtiyaçlarınıza göre uyarlamak için özel yapılandırmalar oluşturmanıza olanak tanır. Bunu yapmak için, C:appserv Apache2.2 conf içindeki http.conf dosyasını bulun. Runtime hatalarından kaçınmak için yedeklenir, daha sonra herhangi bir düzenleyici ile açılır ve gerekli satırlar değiştirilir.
Bu adımları doğru bir şekilde gerçekleştirmek için Apache çalışanı hakkında iyi bir bilgiye sahip olmanız gerekir, çünkü yapılan herhangi bir değişiklik Apache performansına ve başlatmaya yansıyacaktır. En son öneriler sayesinde sunucu kurulacak. İndirmenize izin veren temel bir yapılandırmada çalışacaktır. İnternet'teki sayfalar veya ağ uygulamaları.
Bilgi yönetimi
Apache en çok kullanılan web sunucusudur, dünyada en çok kuruluma sahip liderdir ve Microsoft Internet Information Server (IIS) gibi diğer çözümlerin çok ötesindedir. Bu proje çok platformlu olması, belli başlı tüm işletim sistemleri için versiyonları olması, son derece güvenilir olması ve güvenlik ve performansı ile öne çıkması nedeniyle kullanıma açıktır.
Bu yazılımın çalıştığı bilgisayara aynı ad verilir. Bu, siteye erişen ziyaretçilerden gelen sayfa isteklerini kabul etmekten ve belirlenen güvenlik politikasına göre teslim veya retlerini yönetmekten sorumlu olduğu için kritik öneme sahiptir. Bu işlem basit gibi görünse de tamamlanması gereken birçok yönü ve işlevi içerir:
- Sorgu performansı.
- Çoklu görev de dahil olmak üzere çok sayıda HTTP isteği, hizmetin çökmesine neden olabilir.
- Dosya erişimiyle ilgili kısıtlamalar, kullanıcı kimlik doğrulamasını kontrol etme veya istekleri kaynağına göre filtreleme.
- Ziyaretçi bilgi sayfalarındaki hataları ele alma ve önceden tanımlanmış sayfalara yönlendirme.
- İletilecek bilgiyi formatına göre yönetmek ve belirtilen kaynağı talep eden tarayıcıyı yeterli şekilde bilgilendirmek.
- Alınan istekleri, oluşan hataları ve oluşan hataları depolamak için yönetim günlüğügenel olarak, site erişim istatistiklerini elde etmek için kaydedilen ve analiz edilen tüm bilgiler.
Apache, IP adreslerine veya adlara dayalı sanal barındırma ayarlamanıza, yani bir bilgisayarda birkaç web sitesine sahip olmanıza olanak tanır.
Apache2.conf dosyası
Şüphesiz, apache2.conf en önemli dosyadır, çünkü web sayfalarının genel davranışını tanımlar ve ayrıca sunucunun işlevselliğini artıran çeşitli modüllere erişmekten sorumludur.
/etc/apache2 dizininde bulunur ve bir metin dosyası olduğu için bir metin düzenleyici ile kolayca düzenlenebilir. Yapılandırma Dosyası Özellikleri - Sunucu Genel Değişkenleri ve İşlevsellik Uzantıları.
Global sunucu değişkenleri, genel işlemi tanımlayan değişkenlerdir:
- Apache yönergeleri tablosu. Sunucu adı, SunucuAdı değişkeni tarafından belirtilir, bu nedenle HTML belgelerinde bulunan herhangi bir yönlendirme veya bağlantı sorunsuz çalışır. Çoğu yapılandırma değişkeni, mevcut modlarda depolanan diğer küçük dosyalar arasında dağıtılır.
- .htaccess, sunucunun nasıl çalıştığını özelleştirmenize olanak tanıyan gizli bir metin dosyasıdır.
- "Apache", ana apache2.conf yapılandırma dosyasını değiştirmek zorunda kalmadan belirli bir dizindir. Bir web istemcisi sunucudan bir dosya istediğinde, kök dizinden istenen.htaccess'i içeren alt dizine bakar ve istekte bulunmadan önce içerdiği yönergeleri dikkate alır.
İlke.htaccess:
- Dosyaların dizinde listelenmesini yasaklar.
- Web trafiğini yönlendirir.
- Hata sayfaları kurar.
- Belirli dosyalara erişimi kısıtlayın.
- Belirli IP adreslerine veya IP adresi aralıklarına erişimi engelle.
- Diğer modül çağrıları ve yapılandırma dosyalarıyla ilgili işlevleri genişletir. Bu öğeyle ilişkili tüm yönergelerin önüne "Etkinleştir" kelimesi gelir.
Apache Web Sunucusunu Yükleme
Apache başlangıçta PHP teknolojisiyle çalışacak şekilde tasarlanmıştır, ancak. NET ile de sorunsuz çalışabilir, bu da onu Microsoft'un IIS kullanan sunucular için bir ortak çalışan olan ve gerekmeden tam destek PHP sağlayan IIS'den daha başarılı hale getirir. yapılandırmayı değiştirin.
Bir web sunucusu kurmak ve çalıştırmak için önce onu resmi siteden indirmeniz gerekir. Her zaman mevcut yazılımın en son sürümünü bulun ve OpenSSL dahil Win32 Binary olarak tanımlanıp tanımlanmayacağını kontrol edin.
Sürümün yerleşik bir kurulumu ve veri koruma sistemi vardır. Seçildikten sonra PC'ye indirilir. Bir asistanın eşlik ettiği kadar basit olan işlemi başlatmak için dosya simgesine çift tıklayın.
Web sunucusunun ağa bağlanabilmesi için gerekli bilgileri sağlayacak ilk pencerelerden biri bilgi penceresidir. Burada kullanıcı, ağ etki alanı adını, sunucu adını ve e-posta adresini ekleyerek kısa bir form doldurur.yönetici. İlk iki seçenek için localhost'u seçin.
Ardından, mevcut tüm bileşenlerin listelendiği kurulum penceresi görünecektir. Hepsini seçin ve c:appserv Apache2.2 klasörünün var olup olmadığını kontrol edin. Ardından, Apache web sunucusunu yapılandırın.
Görev çubuğunda Web Monitörü
Apache'yi kurduktan sonra, doğru yapıldığından emin olun. Bunu yapmak için "Başlat" menüsüne gidin ve "Çalıştır" seçeneğini bulun. İçinde cmd girdiğiniz bir açılır pencere belirecek, bir sistem açılır ekranı belirecektir. Kullanıcının yönetici olarak çalıştığından emin olmak için pencereye sağ tıklayın ve "Yönetici olarak çalıştır"ı seçin.
Kurulum algoritması:
- Windows konsolunda Apache bin klasörünü bulun, bunu yapmak için konsola şu cümleyi yazın - c: appserv Apache2.2? içinde.
- Girdikten sonra Enter'a basın, sistem bileşeni şöyle görünecektir - C: appserv Apache2.2? In>.
- Bin klasörüne http:.exe -k install yazın ve Enter'a basın.
- ". Apache 2.2: hizmet zaten kurulu" benzeri bir mesaj görünecektir. Bu mesaj Apache'nin başarıyla kurulduğunu doğrulayacaktır.
Apache'nin düzgün çalışıp çalışmadığını kontrol etmenin en etkili yollarından biri, uygulama izleyicisinin etkin olup olmadığını kontrol etmektir. Görev çubuğunda görülebilir. Aktif değilse Başlat menüsü, Tüm Programlar ve Apache http Sunucusu 2.2'ye giderek etkinleştirin, Apache Sunucusunu İzle'ye tıklayın ve etkinleştirin.
Monitör, sunucuyu durdurmanıza izin verdiği için yararlıdır,kontrol penceresini açmak için görev çubuğundaki simgeye tıklayarak konsol penceresine gitmeden tam rahatlık içinde duraklatın ve etkinleştirin.
Linux Kurulum İpuçları
Bir kullanıcının bir web sitesi varsa ve onu barındırmak için bir platforma ihtiyacı varsa, barındırma sağlayıcılarından birinin hizmetlerini kullanabilir veya web sitenizi sunucuda kendiniz barındırmayı deneyebilirsiniz.
Kurulum algoritması:
- Apache'nin en son kararlı sürümünü indirin.
- Sisteme göre kaynak dosyaları indirin.
- Yazılım dosyalarını ayıklayın.
- Bundan sonra, indirilen dosyaların paketinden çıkarılması gerekecek: gunzip -d httpd-2_0_NN.tar.gz; tar xvf
- Bu, geçerli dizinde kaynak dosyalarla birlikte yeni bir dizin oluşturur.
- Dosyalar görünür görünmez, makineye tüm orijinalleri nerede bulacağını söyleyin. Bunu yapmanın en kolay yolu, tüm varsayılanları kabul etmek ve şunu yazmaktır:./configure.
- Yükleme ve derleme ile ilgili herhangi bir sorun olmaması koşuluyla Apache'yi kurun. Kullanıcı, httpd.conf dosyasını düzenlemeye eşdeğer olan yapılandırmayı ayarlar. Genellikle bir metin düzenleyici ile düzenlenir - vi PREFIX /conf/httpd.conf. Herhangi bir değişiklik yapmak için root olmanız gerekir.
- Sunucunun çalışmasını kontrol edin.
World Wide Web'de Uygulama
Apach, esas olarak World Wide Web'e statik ve dinamik sayfalar göndermek için kullanılır. Birçok uygulama ile tasarlanmıştırApache uygulama ortamları veya bu sunucunun özelliklerini kullanacaktır. Apache, Oracle veritabanı ve IBM WebSphere uygulama sunucusu dahil olmak üzere MySQL ve PHP, Perl, Python ve Ruby programlama dilleri ile birlikte popüler LAMP uygulama platformundaki bir sunucu bileşenidir. Mac OS X, onu kendi web sunucusunun bir parçası olarak entegre eder ve WebObjects uygulamalarını destekler.
Apache, içeriğe güvenli ve güvenilir bir şekilde erişilmesi gereken diğer birçok görev için kullanılır. Örneğin, kişisel bir bilgisayardan İnternet'e dosya paylaşırken. Masaüstünde Apache yüklü olan bir kullanıcı, dosyaları paylaşılabilecekleri belge köküne keyfi olarak yerleştirebilir.
Web uygulaması geliştiricileri, geliştirme sırasında kodu önizlemek ve test etmek için bazen yerel bir Apache sürümünü kullanır. Microsoft Internet Information Services (IIS), Apache'nin ana rakibi, ayrıca Sun Microsystems'in Sun Java System web sunucusu ve Zeus Web-Sunucusu gibi birçok başka uygulamadır.
Dünyanın en büyük web sitelerinden bazıları Apache tarafından desteklenmektedir. Google arama motorunun ön ucu, Google Web Sunucusu (GWS) adı verilen değiştirilmiş bir sürümüne dayanmaktadır. Birçok Wikipedia projesi de Apache sunucularında çalışır.