Instalirajte LEMP - Nginx, PHP, MariaDB i PhpMyAdmin u OpenSUSE
LEMP ili Linux, Engine-x, MySQL i PHP stog je softver paket sastavljen od softvera otvorenog koda instaliranog na operacijskom sustavu Linux za pokretanje web aplikacija temeljenih na PHP-u koje pokreće Nginx HTTP poslužitelj i MySQL/MariaDB sustav za upravljanje bazom podataka.
Pročitajte također: Instalirajte LAMP – Apache, PHP, MariaDB i PhpMyAdmin u OpenSUSE
Ovaj vodič će vas voditi kako instalirati LEMP stog s Nginx, MariaDB, PHP, PHP-FPM i PhpMyAdmin na OpenSuse poslužiteljskim/stolnim izdanjima.
Instalacija Nginx HTTP poslužitelja
Nginx je brz i pouzdan HTTP i proxy poslužitelj koji može podnijeti veće opterećenje HTTP zahtjeva. Koristi asinkroni pristup vođen događajima za rukovanje zahtjevima, a njegova modularna arhitektura vođena događajima može pružiti predvidljiviju izvedbu pod velikim opterećenjima.
Da biste instalirali Nginx na OpenSuse, pokrenite sljedeću naredbu.
sudo zypper install nginx
Nakon što instalirate Nginx, za sada možete pokrenuti uslugu, a zatim joj omogućiti automatsko pokretanje pri pokretanju i provjeriti status Nginxa pokretanjem sljedećih naredbi.
sudo systemctl start nginx
sudo systemctl enable nginx
sudo systemctl status nginx
Pročitajte također: 10 najčešće korištenih Nginx naredbi koje svaki korisnik Linuxa mora znati
U ovom trenutku, Nginx web poslužitelj bi trebao biti spreman i pokrenut, također možete provjeriti status pomoću naredbe netstat kao što je prikazano.
sudo netstat -tlpn | grep nginx
Sada moramo testirati radi li instalacija Nginx dobro. Za razliku od drugih distribucija Linuxa, pod openSUSE, Nginx nema standardni dokument index.html
u web korijenskoj mapi. Moramo stvoriti novu datoteku index.html
u korijenskom web direktoriju "/srv/www/htdocs"
kao što je prikazano.
echo "<h1>Nginx is running fine on openSUSE Leap</h1>" | sudo tee /srv/www/htdocs/index.html
Ako imate instaliran firewall, morate otvoriti port 80 i 443 kako biste omogućili web promet na vatrozidu.
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
sudo firewall-cmd --reload
Zatim otvorite web preglednik i idite na adresu http://localhost
i potvrdite Nginx stranicu.
Instaliranje MariaDB poslužitelja baze podataka
MariaDB je besplatna i otvorena forka sustava za upravljanje relacijskom bazom podataka MySQL. Razvili su ga izvorni programeri MySQL-a i namjerava ostati otvorenog koda. MariaDB je brz, skalabilan i robustan, s bogatim ekosustavom mehanizama za pohranu, dodataka i mnogih drugih alata koji ga čine vrlo svestranim za različite slučajeve upotrebe.
Da biste instalirali MariaDB na OpenSuse, pokrenite sljedeću naredbu.
sudo zypper install mariadb mariadb-client
Zatim pokrenite uslugu MariaDB za sada, a zatim joj omogućite automatsko pokretanje tijekom pokretanja i provjerite njezin status.
sudo systemctl start mariadb
sudo systemctl enable mariadb
sudo systemctl status mariadb
Sljedeći kritični korak u ovom odjeljku je osigurati instalaciju poslužitelja MariaDB. Stoga pokrenite sigurnosnu skriptu koja se isporučuje s paketom MariaDB, kao što je prikazano.
Napomena: Pokretanje sigurnosne skripte MariaDB i svih njezinih dijelova toplo se preporučuje za sve poslužitelje MariaDB u proizvodnji.
sudo mysql_secure_installation
Nakon pokretanja skripte pažljivo pročitajte opis svakog koraka. Trebali biste postaviti root korisničku lozinku, ukloniti anonimne korisnike, onemogućiti udaljeni root pristup, ukloniti testnu bazu podataka i pristup njoj i na kraju ponovno učitati tablicu povlastica.
Instaliranje i konfiguriranje PHP-a i PHP-FPM-a
PHP-FPM (skraćenica za PHP FastCGI Process Manager) alternativni je FastCGI demon za PHP s nekim dodatnim značajkama i dizajniran za podnošenje velikih opterećenja. Održava skupove (radnike koji mogu odgovoriti na PHP zahtjeve) kako bi to postigao. Važno je da je brži od tradicionalnih metoda temeljenih na CGI-ju, kao što je SUPHP, za višekorisnička PHP okruženja.
Za instalaciju PHP i PHP-FPM zajedno s potrebnim modulima pokrenite sljedeću naredbu.
sudo zypper install php php-mysql php-fpm php-gd php-mbstring
Prije nego nastavimo s pokretanjem usluge PHP-FPM, moramo kreirati potrebne konfiguracijske datoteke iz zadanih datoteka danih tijekom instalacije i konfigurirati uslugu spremnu za rad.
sudo cp /etc/php7/fpm/php-fpm.conf.default /etc/php7/fpm/php-fpm.conf
sudo cp /etc/php7/fpm/php-fpm.d/www.conf.default /etc/php7/fpm/php-fpm.d/www.conf
Zatim otvorite glavnu konfiguracijsku datoteku php-fpm.conf
za uređivanje.
sudo vim /etc/php7/fpm/php-fpm.conf
Odkomentirajte sljedeći redak u retku broj 24 kao što je prikazano.
error_log = log/php-fpm.log
Spremite i zatvorite datoteku.
Zatim moramo definirati ispravne postavke za konfigurirane skupove u www.conf
konfiguracijskoj datoteci.
sudo vim /etc/php7/fpm/php-fpm.d/www.conf
Prvo konfigurirajte Unix vlasnika i vlasnika grupe procesa za Nginx korisnika i grupu. Učinite to promjenom vrijednosti korisničkih i grupnih parametara iz nobody
u nginx
.
user = nginx
group = nginx
Sada spremite promjene u datoteku i izađite iz nje.
Dodatno, postoji još jedna važna konfiguracija koju treba izvršiti, a koja osigurava PHP-FPM u datoteci /etc/php/cli/php.ini
.
sudo vim /etc/php7/cli/php.ini
Potražite redak ;cgi.fix_pathinfo=1
i promijenite ga u.
cgi.fix_pathinfo=0
Spremite promjene u datoteku i izađite.
Zatim pokrenite uslugu PHP-FPM za sada, a zatim joj omogućite automatsko pokretanje prilikom podizanja sustava i provjerite njen status.
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
sudo systemctl status php-fpm
Konfiguriranje Nginxa za rad s PHP-FPM
U ovom trenutku moramo konfigurirati Nginx za rad s PHP-FPM u zadanoj Nginx konfiguracijskoj datoteci.
sudo vim /etc/nginx/nginx.conf
Zatim potražite sljedeći odjeljak i dodajte index.php
na popis očekivanih datoteka indeksa.
location / {
root /srv/www/htdocs/;
index index.php index.html index.htm ;
}
Također pronađite sljedeći odjeljak (koji bi trebao biti komentiran) i uklonite komentare. Ovaj se odjeljak koristi za prosljeđivanje PHP skripti FastCGI poslužitelju koji sluša 127.0.0.1:9000.
location ~ \.php$ {
root /srv/www/htdocs/;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
Spremite promjene u datoteku i izađite.
Testiranje Nginx-a i PHP-FPM-a
Sljedeći korak je testirati radi li Nginx dobro u kombinaciji s PHP-FPM stvaranjem nove PHP testne datoteke u DocumentRoot direktoriju kao prikazano.
echo "<?php phpinfo(); ?>" | sudo tee /srv/www/htdocs/info.php
Sada moramo provjeriti je li Nginx konfiguracija ispravna kako slijedi, prije nego nastavimo s ponovnim pokretanjem usluge.
sudo nginx -t
Ako je sintaksa konfiguracije Nginxa u redu, samo naprijed i ponovno pokrenite usluge Nginx i PHP-FPM kako bi nedavne promjene stupile na snagu.
sudo systemctl restart nginx php-fpm
Sada otvorite web-preglednik i idite na adresu http://localhost/info.php
da provjerite PHP konfiguraciju kao što je prikazano na sljedećoj snimci zaslona.
Instaliranje i konfiguriranje PhpMyAdmin
phpMyAdmin je besplatan, jednostavan za korištenje i popularan alat napisan u PHP-u, napravljen za administriranje MySQL poslužitelja preko weba. Podržava širok raspon operacija na MySQL i MariaDB.
Da biste instalirali phpMyAdmin na OpenSuse, pokrenite sljedeću naredbu.
sudo zypper install phpMyAdmin
Nakon što je instalacija dovršena, stvorite novu vhost konfiguracijsku datoteku za pristup phpMyAdmin kao što je prikazano.
sudo vim /etc/nginx/vhosts.d/phpmyadmin.conf
Dodajte sljedeće konfiguracije u datoteku.
server {
listen 80;
server_name localhost/phpMyAdmin;
root /srv/www/htdocs/phpMyAdmin;
location / {
try_files $uri /index.php?$args;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
}
}
Spremite promjene i zatvorite datoteku. Zatim ponovno pokrenite uslugu Nginx sljedećom naredbom.
sudo systemctl restart nginx
Sada idite na svoj web preglednik i upišite adresu http://localhost/phpMyAdmin. Stranica za prijavu phpMyAdmin trebala bi se prikazati kao što je prikazano na sljedećoj snimci zaslona. Unesite vjerodajnice za prijavu korijenskog korisnika baze podataka i kliknite Idi.
To je sve! U ovom vodiču smo vam objasnili kako instalirati LEMP stog s Nginx, MariaDB, PHP, PHP-FPM i PhpMyAdmin na OpenSuse poslužiteljskim/stolnim izdanjima. Ako se suočite s bilo kakvim problemima tijekom postavljanja, postavite svoja pitanja putem obrasca za komentare u nastavku.