Az NGINX, a PHP-FPM és a MariaDB beállítása Debian 8 rendszeren

Ez az útmutató megmutatja, hogyan kell helyesen telepíteni és konfigurálni egy "alternatív" LAMP-vermet Debian 8 rendszeren az NGINX, a PHP Fast Process Manager és a MariaDB használatával.

NGINX

Az NGINX egy "először fordított proxy, a második a webszerver". Ez az Apache népszerű és növekvő alternatívája, amely sok esetben nagyobb rugalmasságot és jobb teljesítményt kínál. Ebben az oktatóanyagban webszerverként fogjuk használni.

Indítsa el kedvenc SSH-kliensét, és jelentkezzen be a szerverére. A Windows-felhasználók számára a "PuTTY" egy ingyenes és könnyű SSH-kliens. A Linux és Mac felhasználók használhatják az operációs rendszerükhöz alapértelmezés szerint mellékelt terminált. Ebben az oktatóanyagban azt feltételezzük, hogy „root” felhasználóként jelentkezett be a szerverére.

Kezdetnek csak ügyeljünk arra, hogy minden naprakész legyen. A frissítések kereséséhez és telepítéséhez írja be a következőket.

apt-get update && apt-get upgrade

A konfigurációs fájljainkat a vimben szerkesztjük. A Vim alapértelmezés szerint nincs telepítve, ezért telepítsük!

apt-get install vim

Itt az ideje az NGINX telepítésének. Az NGINX legújabb verzióját szeretnénk telepíteni a hivatalos NGINX Debian tárolóból.

wget http://nginx.org/keys/nginx_signing.key
apt-key add nginx_signing.key
echo 'deb http://nginx.org/packages/debian/ jessie nginx' >> /etc/apt/sources.list
echo 'deb-src http://nginx.org/packages/debian/ jessie nginx' >> /etc/apt/sources.list
apt-get update && apt-get install nginx

Most némileg módosítanunk kell az NGINX konfigurációt. Navigáljon a konfigurációs könyvtárba.

cd /etc/nginx

Egy gyors vim lecke

A nyílbillentyűkkel navigálhat a szöveges dokumentumban. A szerkesztés megkezdéséhez nyomja meg a billentyűzet "beszúrás" gombját. Ha a billentyűzetén nincs beszúrógomb, nyomja meg az „i” billentyűt. A vim alja felé látni fogja, hogy most az „INSERT” felirat jelenik meg. A Beszúrás mód lehetővé teszi a törlést a backspace használatával, vagy új karakterek beszúrását a beírásukkal.

Nyissuk ki nginx.confés nézelődjünk:

vi nginx.conf

Változtassuk meg az alapértelmezett felhasználót, ellenőrizzük a dolgozói folyamatok számát, és kapcsoljuk ki a hozzáférési naplót.

A "user" és a "worker_processes" direktívák a tetején találhatók. Próbáld ki az alábbi értékeket:

Note that you'll want to set "worker_processes" to the number of CPU cores available on your server. In this example, we have 1, which is the NGINX default.

user www-data;
worker_processes 1;

A hozzáférési naplót is le szeretnénk tiltani az I/O teljesítmény javítása érdekében. Navigáljon lefelé a nyílbillentyűkkel, amíg meg nem találja az "access_log" elemet. Módosítsa a következőre:

access_log off;

Végül pedig beállítjuk a "client_max_body_size" értéket, hogy megfeleljen a PHP-n később végrehajtott változtatásoknak. Kíméljük a fáradságot, és tegyük meg most. Add hozzá közvetlenül az "access_log" alatt:

client_max_body_size 12m;

Ha végzett a szerkesztéssel, nyomja meg az „Esc” billentyűt a billentyűzeten. A Vim többé nem fogja azt mondani, hogy „INSERT” a fájl alja felé.

A változtatások mentéséhez és a vimből való kilépéshez nyomja meg a következő billentyűkombinációt:

SHIFT :(colon)
wq
Press "Enter"

A fenti vim kung fu kiírja a változtatásokat a lemezre, és kilép a vim-ből, így visszakerül a bash shellbe.

Most egy helyspecifikus konfigurációt kell készítenünk a példánkhoz! A többi példakonfigurációt is töröljük. Próbáld ki a következőket:

cd conf.d
rm example_ssl.conf default.conf
vi my_site.conf

Készítünk egy rövid és egyszerű www.confképet, lazán az alapértelmezett NGINX konfiguráció alapján, de néhány finomítással. Nyomja meg a Beszúrás gombot, és kimásolhatja/beillesztheti az alábbi példát.

Don't forget to edit the "root" directive to point to the root directory of your website, and "server_name" to correspond to your domain.

server {
    listen 80;

    root /path/to/your/website;
    index index.php index.html index.htm;

    server_name mydomainname.com www.mydomainname.com;

    location / {
            try_files $uri $uri/ /index.php;
    }

    location ~ \.php$ {
            try_files $uri =404;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include fastcgi_params;
            fastcgi_pass unix:/var/run/php5-fpm.sock;
    }
}

Ezzel az oktatóanyag NGINX konfigurációs részével végeztünk. Rövid időn belül újraindítjuk az NGINX-et, közvetlenül a PHP telepítése után.

PHP-FPM

A PHP-FPM a PHP Fast Process Manager. Az NGINX használatakor szükséges, mert az Apache-tól eltérően az NGINX nem futtatja a PHP-t modulként. Ezt azért tették, hogy csökkentsék az NGINX memóriaterületét. Emlékszel arra a részre, amely arról szól, hogy az NGINX mindenekelőtt fordított proxy? Ez itt jön képbe; Az NGINX-nek küldött PHP kérések a PHP-FPM-be kerülnek, hogy elvégezzék a nehézkes emelést.

Telepítsük a PHP-FPM-et.

apt-get install php5-fpm php5-mysqlnd

Note that depending on what your PHP scripts require, you may have to install other PHP modules not included by default. Popular ones are php5-gd and php5-mcrypt. You can install these with the following command.

apt-get install php5-module_name_here

Most, hogy a PHP-FPM telepítve van, szeretnénk néhány gyors módosítást végrehajtani a biztonság és a funkcionalitás fokozása érdekében.

cd /etc/php5/fpm
vi php.ini

Ideje egy újabb gyors vim leckének! A php.inifájl teljesen hatalmas. Néhány kulcsérték keresése egész napba telhet. Tehát mivel tudjuk, hogy mit keresünk, keresni fogunk. Írja be a következőket:

/upload_max_filesize

Ez alapértelmezés szerint 2 megabájt. Ha azt szeretné, hogy a felhasználók 2 megabájtnál nagyobb fájlokat töltsenek fel PHP-alkalmazásaiba, módosítania kell ezt. 10M egyelőre valószínűleg biztonságos tét, de a magasabb értékek is elfogadhatók. Ez a beállítás konfigurációnként változhat. A bemutató kedvéért:

upload_max_filesize = 10M

Még egy kirívó biztonsági hiba. Görgessen lejjebb egy kicsit, vagy keressen. Az "allow_url_fopen"-t "Off"-ra kell kapcsolnunk. Ez megakadályozza, hogy a PHP TÁVOLTAN üzemeltetett PHP-fájlokat, más néven RFI-t (Remote File Inclusion) futtasson. Sok szervert feltörnek így.

allow_url_fopen = Off

És mivel megváltoztattuk az "upload_max_filesize" értéket, most módosítanunk kell a "post_max_size" értéket. Ennek az értéknek kicsit nagyobbnak kell lennie, mint az "upload_max_filesize", mert számolnunk kell a PHP által feldolgozott kéréseinkhez kapcsolódó többletterheléssel.

Keressünk még egyszer a "/post_max_size" kifejezéssel.

post_max_size = 12M

Note that you'll have to go back to your NGINX configuration and edit "client_max_body_size" if you decide to go with larger values than these examples for your PHP file sizes.

Egyelőre ennyi. Győződjön meg arról, hogy nincs szerkesztési módban az "Esc" lenyomásával. Mentse el és lépjen ki a vimből.

SHIFT :(colon)
wq
Press 'Enter'

A PHP-FPM beállítása kész.

MariaDB

Még egy olyan világban is, amely folyamatosan a NoSQL vagy a MongoDB felé halad, néhányunknak még mindig könnyebb a MySQL-hez való ragaszkodás. Ez különösen igaz számos webes alkalmazásra. Szerencsére ma már számos „beugró” helyettesítő létezik az Oracle MySQL-hez. A Debian 8 mostantól tartalmazza az egyre népszerűbb MariaDB-t. A MariaDB az Oracle MySQL 5.5-ös verzióján alapuló elágazása. A MariaDB minden szándéka ellenére ezt MariaDB 10-nek nevezi. Ez az Oracle MySQL TELJES helyettesítőjének tekinthető. Gondoljon rá úgy, mint a MySQL szívére, az Oracle márkajelzés nélkül és néhány új funkcióval.

apt-get install mariadb-server

FONTOS: Mindenképpen erős root jelszót kell választania a MariaDB számára. Mentse el biztonságos helyre. A MariaDB telepítése során kétszer kell megadnia.

Módosítsuk kicsit a MariaDB konfigurációt. Letiltjuk a MariaDB figyelést a hálózati interfészen keresztül. Ehelyett, mint korábban a PHP-FPM esetében, csak egy UNIX foglalatnál maradunk. A legtöbb PHP-alkalmazásnak támogatnia kell az adatbázis-kiszolgálóhoz való csatlakozást UNIX socketen keresztül a helyi hurok interfész helyett.

cd /etc/mysql
vi my.cnf

Keresse meg a "bind-dress = 127.0.0.1" kifejezést. Kommentáld ezt a sort. Felette vagy alatta adja hozzá a "skip-networking" kifejezést.

#bind-address = 127.0.0.1
skip-networking

Elkészültünk a MariaDB-vel! Végül érdemes lehet módosítani a MariaDB konfigurációt attól függően, hogy elsősorban a MyISAM vagy az InnoDB tárolómotorokat használja-e, de attól függően is, hogy hány processzormag és RAM áll rendelkezésre a szerveren. Az alapértelmezett beállítások időközben elindítanak bennünket.

Indítsuk újra azokat a szolgáltatásokat, amelyek konfigurációs fájljait ebben az oktatóanyagban módosították.

systemctl restart nginx.service
systemctl restart php5-fpm.service
systemctl restart mysql.service

Ennyi – készen vagyunk. Ezen a ponton van egy teljesen működőképes LNMP (LEMP) kiszolgálója online!

Ez az útmutató általános ökölszabályként szolgált a fenti szolgáltatások használatának megkezdéséhez minimális módosítással. További információkért olvassa el a fenti csomagok dokumentációját. Noha ennek a példabeállításnak jól kell működnie, már a dobozból kivéve, a beállításokat lehet, és valószínűleg meg is kell tenni, hogy jobban megfeleljenek az Ön igényeinek.

Javasolt kutatási területek:

  • Az NGINX gyorsítótár-vezérlésének használata és módosítása.
  • PHP-FPM "statikus", "dinamikus" vagy "ondemand" feladatkezelő beállításai.
  • MariaDB teljesítményhangolás, hogy a legtöbbet hozza ki adatbázis-kiszolgálójából.

Hagyj kommentárt

Egyéni Windows ISO létrehozása frissítésekkel az NTLite használatával

Egyéni Windows ISO létrehozása frissítésekkel az NTLite használatával

Ez az oktatóanyag végigvezeti Önt a Vultrs rendszerekkel kompatibilis Windows ISO létrehozásának folyamatán. Itt megtanulhatja az <>Windows ISO<> előállításának lépéseit az NTLite segítségével.

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.