Apache je bezplatný a open-source softvér webového servera, ktorý používa cca 40 % webových stránok po celom svete. Apache HTTP Server je jeho oficiálny názov. Je vyvinutý a udržiavaný spoločnosťou Apache Software Foundation . Apache umožňuje vlastníkom webových stránok poskytovať obsah cez web. To je dôvod, prečo je známy ako „ webový server .' Jedna z najspoľahlivejších a najstarších verzií webového servera Apache bola publikovaná v roku 1995.
Ak chce niekto navštíviť akúkoľvek webovú stránku, vyplní názov domény v adresnom riadku prehliadača. Webový server prinesie požadované súbory ako virtuálny doručovateľ.
Význam webového servera
poštové servery, databázové servery, webové servery, a súborové servery používať rôzne typy serverového softvéru. Všetky tieto aplikácie môžu pristupovať k mnohým súborom uloženým na fyzickom serveri a použiť ich na mnohé účely.
Cieľom webových serverov je poskytovať webové stránky cez internet. Na dosiahnutie tohto cieľa sa správa ako sprostredkovateľ medzi klientskymi strojmi a servermi. Dokáže stiahnuť obsah cez server cez každú požiadavku používateľa. Tiež doručí túto požiadavku na web.
Jednou z najdôležitejších úloh každého webového servera je poskytovať služby rôznym používateľom webu súčasne. Webové servery spúšťajú súbory špecifikované v inom type programovacích jazykov, napr Java , Python , PHP , a veľa ďalších. Webové servery premenia tieto súbory na statické súbory HTML. Poskytuje služby týmto súborom v rámci prehliadača webového servera. Webový prehliadač možno definovať ako nástroj zodpovedný za slušnú komunikáciu klient-server.
Fungovanie Apache
Apache nie je žiadny fyzický server; je to softvér, ktorý sa spúšťa na serveri. My ho však definujeme ako webový server. Jeho cieľom je vybudovať prepojenie medzi prehliadačmi návštevníkov webových stránok (Safari, Google Chrome, Firefox atď.) a serverom. Apache môže byť definovaný ako multiplatformový softvér, takže môže fungovať na serveroch Windows a UNIX.
java konštanty
Keď si ktorýkoľvek návštevník želá načítať stránku na našej webovej stránke, napríklad domovskú stránku alebo našu stránku „O nás“, prehliadač návštevníka odošle požiadavku na náš server. Apache vráti odpoveď spolu s každým požadovaným súborom (obrázky, súbory atď.). Klient a server komunikujú protokolom HTTP a Apache je zodpovedný za bezpečnú a hladkú komunikáciu medzi oboma strojmi.
Apache je softvér, ktorý je vysoko prispôsobiteľné . Obsahuje štruktúru založenú na moduloch. Rôzne moduly umožňujú správcom serverov vypnúť a zapnúť ďalšie funkcie. Apache obsahuje moduly pre ukladanie do vyrovnávacej pamäte, bezpečnosť, overovanie hesla, prepisovanie URL a iné účely. Taktiež môžeme nastaviť vlastnú konfiguráciu servera pomocou súboru známeho ako .htaccess . Je to podporovaný konfiguračný súbor Apache.
Iné webové servery vs. Apache
K dispozícii je toľko webových serverov, ktoré sa líšia od Apache. Všetky aplikácie webového servera boli vytvorené pre rôzne typy cieľov. Apache má niekoľko konkurentov a alternatív a väčšinou sa používa softvér.
Apache vs. NGINX
Nginx sa vyslovuje ako Motor-X . Je to nová aplikácia webového servera a prvýkrát publikovaná v roku 2004. Nginx si získal obľubu medzi majiteľmi webových stránok. Bol vyvinutý na vyriešenie problému c10k, čo znamená, že webové servery využívajúce vlákna na správu rôznych požiadaviek používateľov nedokážu naraz spracovať viac ako 10 000 pripojení.
- Majitelia webových stránok s vysokou návštevnosťou sa môžu stretnúť s problémami s výkonom, pretože Apache používa štruktúru založenú na vláknach. Nginx definuje problém c10k, ktorý je pravdepodobne jedným z najšťastnejších.
- Nginx obsahuje architektúru riadenú udalosťami. Nevytvára novší proces pre všetky požiadavky. Namiesto toho spravuje všetky prichádzajúce požiadavky v individuálnom vlákne. Tento proces spracováva rôzne pracovné procesy, ktoré implementujú skutočné spracovanie požiadavky. Model Nginx založený na udalostiach zdieľa požiadavky používateľov medzi technikami pracovníkov jednoduchým a efektívnym spôsobom, a preto poskytuje lepšiu škálovateľnosť.
- Nginx môže byť lepšou voľbou, pretože dokáže spravovať webové stránky s vysokou návštevnosťou s použitím minimálnych zdrojov. Presnejšie povedané, môže ho používať niekoľko vysoko viditeľných webových stránok, ako sú Airbnb, Pinterest, Hulu a Netflix.
- Apache však na Nginx poskytuje mnoho výhod, pretože má jednoduchú konfiguráciu, prostredie priateľské pre začiatočníkov a rôzne moduly pre stredných alebo malých hráčov.
Apache vs. Tomcat
kocúr cab je definovaný ako webový server a je vylepšený nadáciou Apache Software Foundation. Preto je Apache Tomcat jeho oficiálnym názvom. Tomcat je tiež HTTP server. Vylepšuje však skôr Java aplikácie ako statické webové stránky. Tento webový server môže spúšťať mnoho rôznych aplikácií Java, ako sú WebSocket, Java EL, JSP (Stránky JavaServer) a Java Servlet .
- Konkrétne, Tomcat bol vytvorený pre Java aplikácie, zatiaľ čo Apache bol vytvorený ako HTTP server. Apache môžeme aplikovať s rôznymi programovacími jazykmi (Perl, Python, PHP atď.) s podporou príslušného modulu Apache (mod_perl, mod_python, mod_php atď.).
- Aj keď môžeme použiť webový server Tomcat na obsluhu webových stránok (statický), je na tento účel menej efektívny v porovnaní so serverom Apache. Tomcat môže vopred načítať Java VM a ďalšie knižnice Java, ktoré nebudeme vyžadovať na väčšine webových stránok.
- Tomcat je tiež menej konfigurovateľný v porovnaní s inými typmi webových serverov. Najlepšou možnosťou je HTTP server ako NGINX alebo Apache na spustenie WordPress.
Výhody a nevýhody Apache
Apache môže byť vynikajúcou možnosťou na spustenie našej webovej stránky na všestrannej a stabilnej platforme. Aj keď má niekoľko nevýhod, ktoré musíme pochopiť.
mysql update join
Výhody:
- Stabilný a spoľahlivý softvér.
- Bezplatne a s otvoreným zdrojom, dokonca aj na ekonomické použitie.
- Pravidelné bezpečnostné záplaty, často aktualizované.
- Prívetivé pre začiatočníkov, ľahko konfigurovateľné.
- Flexibilné vďaka modulovej štruktúre.
- Funguje hneď po vybalení so stránkami WordPress.
- Multiplatformové (implementuje sa na serveroch Windows a Unix).
- Ľahko dostupná podpora a obrovská komunita v prípade akéhokoľvek problému.
Zápory:
- Rôzne problémy s výkonom na webových stránkach s extrémne vysokou návštevnosťou.
- Niekoľko možností konfigurácie môže spôsobiť náchylnosť na bezpečnosť.
Verzie Apache
Verzia 1.1
Táto verzia Apache bola schválená v roku 2000 ASF. Hlavná zmena je v rámci „doložky o reklame“ z licencie 1.0. Produkt odvodený od „doložky o reklame“ už nie je potrebný na to, aby zahŕňal aspekty reklamných materiálov (len v dokumentácii).
Verzia 2.0
Verzia 2.0 Apache bola prijatá ASF v januári 2004. Medzi jej stanovené ciele patrilo vytvorenie licencie, ktorá by sa dala ľahko použiť pre niektoré projekty mimo ASF. Môže zlepšiť kompatibilitu so softvérom založeným na GPL. Umožňuje, aby bola licencia pridaná odkazom a nie uvedená vo všetkých súboroch. Objasňuje tiež licenciu na príspevky. Potrebuje akúkoľvek patentovú licenciu na príspevky, ktoré nevyhnutne porušujú patenty príspevku.
Bezpečnosť Apache
Rovnako ako iné webové servery, aj Apache môže byť zneužitý a hacknutý. Hlavným útočným nástrojom Apache je Slowloris. Slowloris dokáže zneužiť chyby v softvéri Apache. Môže vytvoriť niekoľko soketov a udržiavať všetky tieto sokety nažive a posiela rôzne bajty (nazývané „hlavičky udržiavania života“), aby informoval server, že systém je pripojený a nečelí žiadnym problémom so sieťou.
string int
Mnoho vývojárov Apache definovalo Slowloris s niekoľkými modulmi na obmedzenie spôsobeného poškodenia. Rôzne moduly Apache ako napr mod_antiloris, mod_noloris, mod_security, mod_evasive, mod_qos, a mod_limitipconn Všetky boli navrhnuté na zníženie možnosti úspešného útoku Slowloris. Apache dodáva modul mod_reqtimeout ako výkonné riešenie podporované vývojármi od Apache 2.2.15.
Vývoj Apache
Verzie HTTP servera Apache
Najnovšie vydanie | Počiatočné vydanie | Verzia |
---|---|---|
03-02-2010 (1.2.42) | 06-06-1998 | 1.3 |
07-10-2013 (2.0.65) | 04-06-2002 | 2.0 |
07-11-2017 (2.2.34) | 01-12-2005 | 2.2 |
08-07-2020 (2.4.46) | 21.02.2012 | 2.4 |
Projekt Apache je kolektívne úsilie o zlepšenie softvéru zamerané na vytvorenie komerčnej, robustnej, voľne dostupnej implementácie zdrojového kódu HTTP Server s bohatými funkciami. Spoločne sa o projekt staral tím dobrovoľníkov rozmiestnených všade. Dá sa to urobiť pomocou webu a internetu na vývoj, komunikáciu a plánovanie akéhokoľvek servera a súvisiacej dokumentácie.
Projekt je činiteľom nadácie Apache Software Foundation. Mnoho používateľov zdieľalo svoj kód, dokumentáciu a nápady s projektom.
Verzia Apache 2.4 poskytuje podporu pre platformy Tandem, NeXT, UX/A, TPF a BeOS.