Web szerver egy csomó nginx apache
Bontsa ki a Web szerver fut a Linux operációs rendszer, amely egyaránt használnak nginx és az Apache.
Legyen hardver platform, amely már telepítve van CentOS.
Létrehoztunk egy csomó apache + nginx. Ahhoz, hogy az első (front-end) üzembe könnyű és nagy teljesítményű nginx tudott, amely kezelni kérelmeket statikus tartalom (képek, stílusok, js, stb.) A hátsó (back-end) fogunk biztosítani apache, amelynek a feladata az, hogy a dinamikus tartalom (alapvetően, PHP).
Természetesen felmerül a kérdés, hogy ez lehetetlen, hogy anélkül, hogy az apache egyáltalán? Valóban, semmi sem akadályozza meg a configure együttműködés nginx + php + mysql (hívja a PHP FastCGI mód segítségével php-fpm). Az előadás egy ilyen rendszer még magasabb lenne. De van egy komoly hibája: a legtöbb szabványos motorok helyszínek középpontjában közvetlenül a munka mellett apache (hozzáférési jogokat a különböző site könyvtárak vannak beállítva a fájl .htaccess); és tekintettel arra a tényre, hogy nginx nem kezeli .htaccess ilyen helyek mellett nginx nem fog működni módosítás nélkül. Továbbá, ha a feldolgozás az oldalon elég megvalósítható műszaki probléma, a fenntartó több helyszínen (főleg külföldi), ez lesz a valódi problémát.
Tehát ha azt áldozzuk az extrém teljesítmény, de fenntartja támogatását .htaccess.
Telepítse apache, mysql, php. Ehhez szükségünk lesz egy szabványos yum tároló.
Telepítése nginx kicsit bonyolultabb, szükséges, hogy megy a fejlesztő weboldaláról, és olvassa el a telepítési módszer. Szerencsére a közös disztribúció (CentOS, és hasonlók), a fejlesztő biztosítja a kész táska.
Mi létre az egész csapat:
- konfigurációs mysql
- php konfiguráció
- Apache konfigurációs
- Configuration nginx.
Most nézd meg az egyes lépéseket részletesen.
konfigurációs mysql
php konfiguráció
Szinte nincs szükség, akkor részletesen egy külön cikkben. A lényeg az, hogy ne feledkezzünk meg shorttag: short_open_tag = On.
Apache konfigurációs
Mivel az első nginx tudnánk előadott, az azt jelenti, hogy fog futni a szabványos 80-as port és apache vonzó lesz a proxyt bármilyen más kikötői. Azért választottam 8080.
Mi módosíthatja a globális beállítások fájlt. Idézem csak a legfontosabb paramétereket kell ellenőrizni:
Érdekes, hogy a KeepAlive le kell tiltani (kösz a tippet Mike figyelmes olvasó). A rendszer teljesítménye javulni fog, ha a httpd folyamatot, amely a dinamikus tartalmat azonnal ki fog oldódni.
Fontos, hogy a felhasználó és a csoport, amely működik együtt a két szolgáltatást, és nginx tudott, és httpd. Természetesen ez kell, hogy legyen egy és ugyanaz a felhasználó számára, hogy a httpd, nginx és konfliktusok elkerülése érdekében! Régebben erre a felhasználók és csoportok apache; ennek eredményeként a httpd fut ki a „saját” nevét, de nginx kénytelen dolgozni álnéven.
Tehát szükség van, hogy leírja az összes virtuális szerver. Emellett nem szabad elfelejteni egy fájlt vhost.conf. amelyben meg kell elhelyezni az alapértelmezett konfiguráció az oldalon.
Most desszert! Ne állítsa elég apache a normális működéshez, meg kell kezelni a REMOTE_ADDR fejléc helyesen. Ezekre a célokra telepíteni és konfigurálni rPAF (mod_rpaf megfelel az első változata apache, és mod_rpaf2 - másodperc).
Így REMOTE_ADDR fejléc ismét egy egyedi IP címet! Például én célokra, ez rendkívül fontos, mert akkor meg kell nézni a felhasználók, és folyamatosan részletes naplókat jelentéseket.
Állítsa rPAF modul, amelyben meg kell találni az interneten egy külön csomagot a mi forgalmazás. Van egy alternatív módja: csatlakoztassa a tároló Atomic repo és használata yum. Ezután hangolja rPAF, létrehozására és szerkesztésére /etc/httpd/conf.d/mod_rpaf.conf:
Miután konfiguráció szükséges Apache újraindításához.
konfiguráció nginx
Bemutatjuk a globális konfigurációs fájl az / etc / nginx / nginx.conf:
Vége. minden szolgáltatás elég újraindítani, és győződjön meg arról, hogy a webszerver fut!
Pályahasználati valós idejű szerver:
Ha a böngésző konzol jelenik ERR_INCOMPLETE_CHUNKED_ENCODING (általában akkor történik, ha a CSS fájlok és js generált "on the fly"), ellenőrizze a tulajdonosi jogokat és / var / cache / nginx / proxy_temp. Is, akkor van értelme, hogy távolítsa el a két kiterjesztését megengedett statikus fájltípusok nginx.
Ha a hiba log jelenik upstream válasz pufferelt egy ideiglenes fájlba. kell a globális konfigurációs fájl hozzá nginx proxy_max_temp_file_size 0; szakaszban http.