LEMP Stackin asentaminen Rocky Linux 8:aan


LEMP on suosittu pino, joka sisältää avoimen lähdekoodin ohjelmistoja, joita käytetään yhdessä verkkosovellusten isännöimiseen ja palvelemiseen, olipa kyseessä tuotanto tai missä tahansa kehitysvaiheen vaiheessa.

Terminologia LEMP on lyhenne sanoista Linux, Nginx (äännetään nimellä Engine X, joten E), joka on verkkoselain, MariaDB tai MySQL – tietokanta ja PHP dynaamisen sisällön käsittelyyn). LEMP-pinoa käytetään yleisesti suuren liikenteen ja erittäin skaalautuvien verkkosovellusten ja -sivustojen isännöimiseen.

Tässä oppaassa opit asentamaan LEMP-pinon Rocky Linux 8.4:ään.

Edellytykset

Ennen kuin aloitat LEMP-pinon asentamisen, varmista, että seuraavat vaatimukset täyttyvät.

  • Rocky Linux 8:n ilmentymä, jossa sudo-käyttäjä on määritetty.
  • SSH-yhteys Rocky Linux -esiintymään.

Aloitetaan…

Vaihe 1: Asenna Nginx Rocky Linuxiin

Ensimmäinen vaihe on asentaa LEMP-pinon ensimmäinen komponentti, joka on Nginx-verkkopalvelin. Päivitä ensin paketit.

sudo dnf update -y

Kun päivitys on valmis, asenna Nginx suorittamalla seuraava komento. Tämä asentaa Nginxin muiden verkkopalvelimen edellyttämien riippuvuuksien rinnalle.

sudo dnf install nginx 

Kun Nginx on paikallaan, ota se käyttöön käynnistyshetkellä ja käynnistä Nginx-daemon.

sudo systemctl enable nginx 
sudo systemctl start nginx 

Varmista, että verkkopalvelin on käynnissä, suorittamalla komennon:

sudo systemctl status nginx

Tulosteesta voimme päätellä, että verkkopalvelin on toiminnassa.

Jos olet tarpeeksi utelias, voit tarkistaa Nginx-version seuraavasti. Tulos osoittaa, että käytössämme on Nginx 1.14.1.

nginx -v

nginx version: nginx/1.14.1

Lisäksi voit varmistaa, että selain toimii selaamalla näkyvää URL-osoitetta. Tämä näyttää oletusarvoisen Nginx-tervetulosivun, joka osoittaa, että kaikki on hyvin.

http://server-ip or domain name

Jos sinulla on ongelmia sivun katselemisessa, harkitse portin 80 avaamista tai HTTP-liikenteen sallimista palomuurissa.

sudo firewall-cmd --zone=public --add-service=http --permanent 

Lataa sitten palomuuri uudelleen ja lataa sivu uudelleen.

sudo firewall-cmd --reload

Vaihe 2: Asenna MariaDB Rocky Linuxiin

Tätä opasta varten asennamme MariaDB-tietokannan. Tämä johtuu optimoidusta suorituskyvystä ja sen tarjoamista tallennusmoottoreista, mikä tekee siitä paljon paremman kuin MySQL.

Asenna MariaDB-tietokantapalvelin suorittamalla komento:

sudo dnf install mariadb-server mariadb

Kun olet valmis, ota MariaDB käyttöön ja käynnistä se kuvan mukaisesti.

sudo systemctl enable mariadb
sudo systemctl start mariadb

Tarkista sitten sen tila.

sudo systemctl status mariadb

MariaDB:n oletusasetukset eivät ole riittävän turvallisia, ja tietokantaasi voidaan helposti rikkoa. Suorita alla oleva komentosarja varotoimenpiteenä tunkeilijoiden estämiseksi yksinkertaisimmalla tasolla.

sudo mysql_secure_installation

Muista määrittää Root-salasana.

Kirjoita jäljellä oleviin kehotteisiin Y poistaaksesi nimettömät käyttäjät, estääksesi etäpääkirjautumisen, poistaaksesi testitietokannan ja tallentaaksesi lopuksi tehdyt muutokset.

Kirjautuaksesi tietokantapalvelimelle, suorita komento:

sudo mysql -u root -p

Anna salasana ja paina ENTER.

Vaihe 3: Asenna PHP Rocky Linuxiin

Viimeinen asennettava komponentti on PHP PHP-FPM:n kautta, joka tarkoittaa FastCGI Process Manageria. Tämä on tehokas ja erittäin edistynyt PHP-prosessori, joka tarjoaa ominaisuuksia, jotka takaavat optimaalisen suorituskyvyn ja turvallisuuden paljon liikennettä käyville verkkosivustoille.

Aloita asentamalla Remi-arkisto, joka on kolmannen osapuolen ilmainen arkisto, joka tarjoaa uusimmat PHP-versiot.

Ota Remi-tietovarasto käyttöön suorittamalla komento:

sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm

Kun Remi-arkisto on otettu käyttöön, katso luettelo PHP-moduuleista, joita isännöidään esitetyllä komennolla.

sudo dnf module list php

Tulosteesta näemme, että oletusversio on 7.2 – tunnisteella [d]. Asennamme kuitenkin uusimman moduulin, joka on Remi 8.0.

Siksi palauta oletusarvoiset PHP-moduulit ja ota käyttöön uusin Remi PHP -moduuli.

sudo dnf module list reset php
sudo dnf module enable php:remi-8.0

Päivitä seuraavaksi järjestelmä ja asenna PHP ja PHP-FPM haluamiesi PHP-laajennusten rinnalle.

sudo dnf install php php-fpm php-gd php-mysqlnd php-cli php-opcache

Kun asennus on valmis, ota PHP-FPM käyttöön ja käynnistä se kuvan mukaisesti.

sudo systemctl enable php-fpm
sudo systemctl start php-fpm

Tarkista seuraavaksi, että PHP-FPM on käynnissä.

sudo systemctl status php-fpm

Normaalisti PHP-FPM toimii Apache-käyttäjänä, mutta koska käytämme Nginxiä, meidän on asetettava se arvoon Nginx<.. Avaa siis seuraava asetustiedosto.

sudo vim /etc/php-fpm.d/www.conf

Aseta käyttäjäksi ja ryhmäksi Nginx.

user = nginx
Group = nginx

Lataa sen jälkeen PHP-FPM-daemon uudelleen.

sudo systemctl reload php-fpm

Varmista, että olemme asentaneet PHP:n uusimman version suorittamalla komennon.

php -v

Toinen näppärä tapa testata PHP:tä on luoda yksinkertainen PHP-tiedosto ja sijoittaa se webroot-hakemistoon, joka sijaitsee osoitteessa /usr/share/nginx/html. Luo siis yksinkertainen info.php-tiedosto /usr/share/nginx/html webroot-hakemistoon.

sudo vim /usr/share/nginx/html/info.php

Lisää seuraava sisältö ja tallenna tiedosto.

<?php

phpinfo();

?>

Jos haluat tehdä muutokset, lataa Nginx-verkkopalvelin uudelleen.

sudo systemctl restart nginx

Siirry lopuksi seuraavaan URL-osoitteeseen.

http://server-ip/info.php

Näyttöön tulee verkkosivu, jossa on yksityiskohtaisia tietoja asennetusta PHP-versiosta muiden PHP-laajennusten ohella.

Tässä vaiheessa LEMP-asennus on valmis. Seuraavassa vaiheessa isännöimme esimerkkisivustoa määrittämällä Nginx-palvelinlohkon.

Vaihe 3: Määritä Nginx-palvelinlohko Rocky Linuxissa

Palvelinlohkon avulla järjestelmänvalvojat voivat isännöidä useita verkkosivustoja yhdellä palvelimella määrittämällä eri sivustodokumenttien juurihakemistoja. Nämä ovat hakemistoja, jotka sisältävät verkkosivuston tiedostot.

Täällä luomme yhden Nginx-palvelinlohkotiedoston esimerkkisivuston isännöimiseksi.

Vaihe 1: Luo Web-sivustohakemisto

Luo ensin sivuston asiakirjahakemisto, joka sisältää sivuston tiedot, jotka ovat sivuston vierailijoiden käytettävissä. Oletetaan, että sinulla on verkkotunnus example.com. Luo sivuston verkkotunnushakemisto seuraavasti. Muista korvata example.com sivustosi täydellisellä verkkotunnuksella tai rekisteröidyllä verkkotunnuksella.

sudo mkdir -p /var/www/example.com/html

Vaihe 2: Aseta omistusoikeus ja käyttöoikeudet verkkosivustolle

Verkkotunnuksen hakemistorakenne on nyt asetettu isännöimään sivuston tiedostoja. Tällä hetkellä tiedostot omistaa pääkäyttäjä. Meidän on asetettava omistajuus siten, että tiedoston omistaa tavallinen käyttäjä.

Jos haluat vaihtaa tiedostojen omistajuuden tällä hetkellä kirjautuneelle käyttäjälle, käytä chown-komentoa.

sudo chown -R $USER:$USER /var/www/example.com/html

Muuttuja $USER ottaa sisäänkirjautuneen käyttäjän arvon ja antaa käyttäjälle omistusoikeuden html-tiedostoihin ja alihakemistoihin. Lisäksi myönnä yleiselle web-juurihakemistolle lukuoikeus, jotta sivuston vierailijat voivat käyttää sivuston sivuja.

sudo chmod -R 755 /var/www

Sivustohakemisto on nyt hyvin konfiguroitu palvelemaan sivuston verkkosivuja.

Vaihe 3: Luo esittelysivusto

Luodaan nyt esimerkkitestisivusto. Luomme hyvin yksinkertaisen index.html-tiedoston verkkotunnuksen html-hakemistoon.

sudo vim /var/www/example.com/html/index.html

Liitä sisältö alle. Kuten näet, se on melko yksinkertainen, koska käytämme sitä vain testaustarkoituksiin.

<html>
  <head>
    <title>Welcome to Example.com!</title>
  </head>
  <body>
    <h1>Success! The server block is active!</h1>
  </body>
</html>

Tallenna ja poistu HTML-tiedostosta.

Vaihe 4: Luo Nginx-palvelinlohko verkkosivustolle

Palvelinlohkotiedosto on tiedosto, joka sisältää sivuston määritykset. Siinä kerrotaan, kuinka Nginx-verkkopalvelin vastaa sivuston vierailijoiden pyyntöihin. Aloitamme luomalla kaksi hakemistoa:

  • /etc/nginx/sites-available – Tämä on hakemisto, joka sisältää palvelimen estotiedoston.
  • /etc/nginx/sites-enabled – Hakemisto ilmoittaa Nginxille, että palvelinlohkotiedosto on valmis palvelemaan pyyntöjä.

Siksi luo hakemistot seuraavasti:

sudo mkdir /etc/nginx/sites-available
sudo mkdir /etc/nginx/sites-enabled

Muokkaa sen jälkeen Nginxin pääasetustiedostoa.

sudo mkdir /etc/nginx/nginx.conf

Liitä seuraavat rivit. Ensimmäinen rivi määrittää polun hakemistoon, joka sisältää muita asetustiedostoja. Toinen rivi lisää verkkotunnusten jäsentämiseen varattua muistia.

include /etc/nginx/sites-enabled/*.conf;
server_names_hash_bucket_size 64;

Tallenna ja poistu.

Luo seuraavaksi palvelinlohkotiedosto.

sudo vim /etc/nginx/sites-available/example.com.conf

Liitä sisältö alle. Korvaa example.com Fully Qualified Domain -nimelläsi (FQDN) tai palvelimen IP-osoitteella.

server {
    listen  80;

    server_name example.com www.example.com;

    location / {
        root  /var/www/example.com/html;
        index  index.html index.htm;
        try_files $uri $uri/ =404;
    }

    error_page  500 502 503 504  /50x.html;
    location = /50x.html {
        root  /usr/share/nginx/html;
    }
}

Tallenna ja poistu tiedostosta.

Vaihe 5: Ota Nginx-palvelinlohko käyttöön

Lopuksi meidän on otettava käyttöön palvelinlohkotiedosto. Tätä varten luomme symbolisen linkin palvelinlohkotiedostolle sivustoja tukevaan hakemistoon.

sudo ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/example.com.conf

Käynnistä sitten Nginx uudelleen, jotta muutokset tulevat voimaan.

sudo systemctl restart nginx

Vaihe 6: Testaa Nginx-verkkosivustoa

Testaaksesi määritystä käynnistä selain ja käy sivustosi verkkotunnuksessa

http://example.com

Tämän pitäisi näyttää palvelinlohkon sivusto, kuten määritimme vaiheessa 3.

Ja tämä päättää asian. Tässä oppaassa olemme opastaneet sinut LEMP-pinon asennuksen läpi Rocky Linux 8 -käyttöjärjestelmään ja menimme askeleen pidemmälle palvelinlohkotiedoston luomisessa ja määrittämisessä, jossa isännöimme mukautettu verkkosivusto.