Az egyik előző cikk Beszéltünk arról, hogy miért a Linux a legjobb megoldás a webhoszt üzemeltetésére. Most nézzük meg néhány nyílt forráskódú opció a webszerverekhez.
A "webszerver" kifejezés hardverre és szoftverre egyaránt vonatkozik.
Hardver szempontból a webkiszolgáló olyan számítógép, amely tárolja a webkiszolgáló szoftvert és a weboldal alkotófájljait. (például HTML dokumentumok, képek, CSS stíluslapok és JavaScript fájlok). Csatlakozik az internethez, és támogatja a fizikai adatok cseréjét más, az internethez csatlakoztatott eszközökkel. Szoftver esetén A webkiszolgáló számos összetevőt tartalmaz, amelyek szabályozzák, hogy a webfelhasználók hogyan férjenek hozzá a hosztolt fájlokhoz.
A webkiszolgáló fő összetevője egy HTTP szerver. Ez egy számítógépes program, amely megérti az URL-eket (webcímeket) és támogatja a HTTP-t (azt a protokollt, amelyet a böngészők használnak a weboldalak eléréséhez). A kiszolgáló erőforrásaihoz való hozzáférés úgy történik, hogy beír egy tartománynevet vagy egy IP-címet a böngészősávba.
Az alapvető működési mechanizmus a következő. Amikor a felhasználó egy webkiszolgálón tárolt oldalt akar megtekinteni, a böngésző HTTP-n keresztül kéri az oldalt. Amikor a kérés eléri a megfelelő webszervert (hardvert), a HTTP szerver (szoftver) elfogadja a kérést, megtalálja a kért oldalt vagy hibaüzenetet, ha nem, és az eredményt a HTTP protokoll segítségével is megjeleníti.
A webszerverek kétféle típusúak lehetnek:
- Statikus: Ez egy HTTP HTTP szerverrel rendelkező számítógép, amely feltöltött webhelyet mutat.
- Dinamikus: A szoftverréteg egy statikus webszerverből és további szoftverekből áll, például egy alkalmazásszerverből és egy adatbázis-motorból. Az alkalmazáskiszolgáló frissíti a tárolt fájlokat, mielőtt a HTTP szerveren keresztül elküldené őket a böngészőbe.
A webszerverek nemcsak tartalmat küldenek, hanem fogadhatnak is. Ez azokra a webhelyekre vonatkozik, amelyek olyan funkciókat tartalmaznak, mint az űrlapok vagy a fájlok feltöltése.
A webhelyekkel való felhasználói interakció javítása érdekében sok szerver támogatja a programozási nyelveket amelyek lehetővé teszik olyan műveletek végrehajtását, mint például űrlapok küldése e-mailben, matematikai műveletek végrehajtása, keresési funkciók végrehajtása stb.
A rendelkezésre álló statisztikák szerint Az internetes oldalak 80% -a nyílt forráskódú webszervereken fut.
Az 5 leggyakrabban használt webszerver rangsorolása a következőképpen oszlik meg:
- Apache 37,2%
- Nginx 32,4%
- Cloudflare (saját) 15,0%
- Microsoft IIS (saját) 7,3%
- LiteSpeed 6,8%
Nyílt forráskódú webszerverek. Néhány lehetőség
Apache HTTP Server
25 év múlttal a háta mögött, ez a megbízható szerver Linux, Windows és Mac verziókkal rendelkezik. Moduláris architektúra segítségével épül fel, amely lehetővé teszi a funkciók szükség szerinti hozzáadását.
Teljes dokumentációval rendelkezik, és kora és népszerűsége miatt az internet tele van oktatóanyagokkal a konfigurálásával kapcsolatban.
nginx
Több egyidejű kapcsolat támogatására tervezték, szolgálják felr eseményvezérelt aszinkron architektúra felhasználásával épül fel. Tudom az erőforrások hatékony felhasználása és könnyen skálázható.
lighttpd
Ez a szerver jellemzi alacsony memóriahasználat, alacsony CPU-erőforrásigény és gyors végrehajtás. Ugyancsak olyan architektúrával lett kialakítva, hogy reagáljon az eseményekre, és több egyidejű kapcsolatot támogat.
A Lighthttpd webkiszolgáló támogatja a FastCGI, SCGI, Auth, kimenő tömörítést és URL átírást
Caddy 2
A az újabb projektek közül a GO nyelv és az imalapértelmezés szerint a HTTPS protokoll így nincs szükség semmire az SSL tanúsítványok telepítéséhez és megújításához. Biztonsági politikája kevésbé teszi kiszolgáltatottá a Heartbleed típusú támadásokkal szemben.
Mivel nem kell használnia a host OS könyvtárakat telepíthető anélkül, hogy aggódna a függőségi problémák miatt.
Ez egy szoftver azok számára, akik szeretnék nem kell aggódnia a beállítások miatt. Ha rugalmasságra van szüksége, akkor máshol kell keresnie.