Web sunucusu, web sayfaları biçiminde bilgi sağlamaktan sorumlu bir uygulamadır. Ayrıca, aşağıdakiler de dahil olmak üzere birçok ek işlevden sorumludur:
- PHP, ASP ve diğer programlama dillerinde yazılmış çeşitli uygulamaları çalıştırın;
- HTTPS kullanarak güvenli bağlantıyı destekleyin;
- kullanıcı yetkilendirme.
Ana web sunucuları
Bugün, Apache web sunucusu, çok sayıda işletim sistemiyle uyumluluğu ve ücretsiz lisansı nedeniyle en popüler olanıdır. Kurumsal kullanıcılar ortamında, Internet Information Services adlı benzer bir ürün (IIS), şirket tarafından geliştirilen, genellikle Microsoft'u kullanır.
Bazı durumlarda örneğin statik içerik oluşturma hızını artırmak veya uygulamada belirli işlevleri kullanmak gerekirse Nginx, lighttpd ve diğer web sunucularını kullanmaya başvururlar.
Web sunucusu nasıl çalışır
Kullanıcıdan bir istek aldıktan sonra, web sunucusu, istenen dosyanın türüne bağlı olarak, istemciye gönderir veya sayfayı işlemeye başlar. neredeişlemin başarısını veya herhangi bir hatayı belirten bir yanıt kodu oluşturulur.
Sayfa işleme sırasında, web sunucusu gerekirse çeşitli komut dosyalarını veya uygulamaları başlatır, onlardan veri alır ve gerekli forma dönüştürdükten sonra istemciye gönderir. Çoğu zaman, web sunucusunun çalışmasının sonucu, tarayıcı tarafından görüntülenen HTML olarak tasarlanmış sayfalardır. Başka cevaplar da var, örneğin kullanıcının cihazında çalışan programlar için, veriler XML, JSON formatında vb. alınabilir.
Yerel web sunucuları tasarlama
Uygulama geliştirirken, herhangi bir programcı sürekli test etme ihtiyacıyla karşı karşıya kalır. Bu amaçlar için doğrudan geliştiricinin bilgisayarına kurulan yerel bir web sunucusu kullanmak genellikle uygundur. Bunun nedeni, hızlı bir şekilde düzenleme yapabilme yeteneği ve sürekli olarak uzak makinelere bağlanma ihtiyacının olmamasıdır.
Dosya açma işlevini kullanarak ek yazılım olmadan HTML sayfalarının görünümünü kontrol edebilirsiniz. Bu durumda, tarayıcı uygulamayı yürütmez, ancak HTML işaretlemesini gözlemleyerek tüm metni ekranda görüntüler. Bu en garip sonuçlara yol açabilir. Kaynağın İnternet'e yerleştirilmesiyle elde edilecek sonuçlara karşılık gelen sonuçların elde edilmesi, yerel bilgisayarda kurulu olan web sunucusuna izin verir.
Geliştirici paketleri veya kendin yap web sunucusu kurulumu ve kurulumu
Çoğu web sunucusu ücretsiz olarak ve ücretsiz lisanslar altında dağıtılır. Ücretli ürünler nadirdir ve kural olarak yalnızca kurumsal ortamda gereklidir. Yazılımı kendi bilgisayarınıza indirip yüklemek sorun değil. Daha zor olan adım kurulumdur. Varsayılan konfigürasyondaki web sunucusu, uygulama testi sırasında bile gerçek kullanım için elverişsizdir. Bu nedenle, gerekli parametreleri belirlemek için birkaç dosyayı düzenlemeniz gerekecek.
Başka bir yaklaşım, Windows kullanıcıları arasında popülerdir. Geliştiriciler için uygulama paketlerinin kullanımından oluşur. Böyle bir kit hemen şunları içerir: bir web sunucusu, MySQL veritabanı yönetim sistemi, çeşitli programlama dilleri. Bu seçenekte, yerel bir bilgisayara kurulumdan sonra her şey otomatik olarak yapılandırılacaktır.
Kurulum seçeneği, kullanıcının kişisel tercihlerine ve niteliklerine bağlıdır. Çoğu durumda, kiti kullanabilirsiniz, ancak programlama dillerinin veya veritabanlarının eski sürümleri olabilir, bu da bitmiş kaynağı barındırmak için bir barındırma sağlayıcısının geliştirilmesini ve seçimini büyük ölçüde karmaşıklaştırabilir.
Sanal bir makineye yerel bir web sunucusu yükleme
Bir sanal makine, tek bir bilgisayarda birden çok işletim sistemi örneğini çalıştırmanıza olanak tanır. Ve hatta farklı ailelerden olabilirler. Örneğin, Linux ve FreeBSD'yi Windows'tan çalıştırabilirsiniz.
Uygulamaları veya siteleri sanal bir ortamda test etmek için bir web sunucusu yüklememakine, işin gerçekleştirileceği gerçek koşullara mümkün olduğunca benzer bir konfigürasyon oluşturmanıza olanak tanır. Çoğu modern barındırma sitesi Linux çalıştırıyor ve bu da daha spesifik yazılım yapılandırmalarına yol açıyor. Sanal bir makinede aynı işletim sistemini kurabilir, gerçeğe mümkün olduğunca yakın bir dosya yapısı oluşturabilir, gerekli programlama dillerini ve veritabanı yönetim sistemlerini seçebilirsiniz. Diğer bir avantaj ise, çok çeşitli konfigürasyonlar gerektiren birden fazla projeyi test etme yeteneğidir.
Sanallaştırma yaklaşımının bir dezavantajı var. Kullanıcının, yalnızca web sunucusunun yanı sıra diğer programları kurmak ve kurmak için belgelere değil, aynı zamanda işletim sisteminin kılavuzlarına da aşina olması gerekecektir. Sanal makineleri hızlı bir şekilde kurmak için, web sunucusunu ve diğer uygulamaları otomatik olarak kuracak ve yapılandıracak özel kontrol panellerini de kullanabilirsiniz.