Instalați LEMP - Nginx, PHP, MariaDB și PhpMyAdmin în OpenSUSE


LEMP sau Linux , stilurile Engine-x , MySQL pachet compus din software open source instalat pe sistemul de operare Linux pentru rularea aplicațiilor web bazate pe PHP, alimentate de serverul Nginx HTTP și sistemul de gestionare a bazei de date MySQL/MariaDB .

Acest tutorial vă va îndruma cu privire la modul de instalare a unui stack LEMP cu Nginx , MariaDB , PHP < PHP-FPM și PhpMyAdmin pe edițiile server/desktop OpenSuse .

Instalarea serverului Nginx HTTP

Nginx este un server HTTP și proxy rapid și de încredere care poate gestiona încărcarea mai mare a cererilor HTTP. Utilizează o abordare asincronă bazată pe evenimente, pentru a gestiona cererile, iar arhitectura modulară bazată pe eveniment poate oferi performanțe mai previzibile la sarcini mari.

Pentru a instala Nginx pe OpenSuse , executați următoarea comandă.

$ sudo zypper install nginx

Odată instalat Nginx , puteți porni serviciul pentru moment, apoi îl puteți activa automat la pornire și verificați starea Nginx executând următoarele comenzi.

$ sudo systemctl start nginx
$ sudo systemctl enable nginx
$ sudo systemctl status nginx

În acest moment, serverul web Nginx ar trebui să funcționeze și puteți verifica starea utilizând comanda netstat așa cum se arată.

$ sudo netstat -tlpn | grep nginx

Acum, trebuie să testați dacă instalarea Nginx funcționează bine. Spre deosebire de alte distribuții Linux, sub openSUSE , Nginx nu are un document standard index.html în directorul rădăcină web. Trebuie să creați un nou fișier index.html sub directorul web /srv/www/htdocs ca afișaj.

$ echo "<h1>Nginx is running fine on openSUSE Leap</h1>" | sudo tee /srv/www/htdocs/index.html

Dacă aveți instalat un firewall, trebuie să deschideți portul 80 și 443 pentru a permite traficul web pe firewall.

$ sudo firewall-cmd --permanent --add-port=80/tcp
$ sudo firewall-cmd --permanent --add-port=443/tcp
$ sudo firewall-cmd --reload

Apoi, deschideți un browser web și navigați la adresa http:/localhost și verificați pagina Nginx.

Instalarea serverului de baze de date MariaDB

MariaDB este o forță gratuită și open source a sistemului de gestionare a bazelor de date relaționale MySQL . Este dezvoltat de dezvoltatorii originali ai MySQL și este destinat să rămână open source. MariaDB este rapidă, scalabilă și robustă, cu un ecosistem bogat de motoare de stocare, plugin-uri și multe alte instrumente, ceea ce îl face foarte versatil pentru o gamă largă de cazuri de utilizare.

Pentru a instala MariaDB pe OpenSuse , executați următoarea comandă.

$ sudo zypper install mariadb mariadb-client 

Apoi, porniți acum serviciul MariaDB, apoi activați-l să pornească automat la pornire și verificați starea acestuia.

$ sudo systemctl start mariadb 
$ sudo systemctl enable mariadb 
$ sudo systemctl status mariadb 

Următorul pas critic din această secțiune este asigurarea instalării serverului MariaDB. Prin urmare, executați scriptul de securitate care apare cu pachetul MariaDB, după cum se arată.

roșu

$ sudo mysql_secure_installation 

După ce executați scriptul, citiți cu atenție descrierea la fiecare pas. Ar trebui să setați o parolă de utilizator root, să eliminați utilizatorii anonimi, să dezactivați accesul rădăcină de la distanță, să eliminați baza de date de testare și să accesați tabelul de încercări și să reîncărcați privilegiile.

Instalarea și configurarea PHP și PHP-FPM

PHP-FPM (scurt pentru PHP FastCGI Process Manager ) este un daemon FastCGI alternativ pentru PHP și proiectate să facă față sarcinilor mari. Păstrează grupuri ( lucrători care pot răspunde la cererile PHP) pentru a realiza acest lucru. Este important faptul că este mai rapid decât metodele tradiționale bazate pe CGI, cum ar fi SUPHP , pentru medii PHP multi-utilizator.

Pentru a instala PHP și PHP-FPM împreună cu modulele necesare, executați următoarea comandă.

$ sudo zypper install php php-mysql php-fpm php-gd php-mbstring

Înainte de a începe să porniți serviciul PHP-FPM , trebuie să creați fișierele de configurare necesare din fișierele prestabilite furnizate în timpul instalării și să configurați serviciul pregătit pentru operații.

$ 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

Apoi deschideți fișierul de configurare principal php-fpm.conf pentru editare.

$ sudo vim /etc/php7/fpm/php-fpm.conf 

Deconectați următoarea linie la numărul de linie 24 așa cum se arată.

error_log = log/php-fpm.log

Salvați și închideți fișierul.

Apoi, trebuie să definim setările corecte pentru piscinele configurate din fișierul de configurare www.conf .

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

Mai întâi, configurați proprietarul Unix și proprietarul grupului de procese pentru utilizatorul și grupul Nginx. Faceți acest lucru prin modificarea valorilor parametrilor utilizatorilor și grupurilor de la nobody la nginx .

user = nginx
group = nginx

Acum salvați modificările fișierului și închideți-l.

În plus, există o altă configurație importantă de îndeplinit, care asigură PHP-FPM în fișierul /etc/php/cli/php.ini .

$ sudo vim /etc/php7/cli/php.ini

Căutați linia ; cgi.fix_pathinfo = 1 și schimbați-o.

cgi.fix_pathinfo=0

Salvați modificările din fișier și ieșiți.

Apoi, porniți serviciul PHP-FPM pentru moment, apoi activați-l să pornească automat la momentul încărcării și verificați starea acestuia.

$ sudo systemctl start php-fpm
$ sudo systemctl enable php-fpm
$ sudo systemctl status php-fpm

Configurarea Nginx pentru a lucra cu PHP-FPM

În acest moment, trebuie să configurați Nginx pentru a lucra cu PHP-FPM în fișierul de configurare implicit Nginx.

$ sudo vim /etc/nginx/nginx.conf

Apoi căutați următoarea secțiune și adăugați index.php în lista fișierelor index index.

location / { 
           root   /srv/www/htdocs/; 
           index  index.php index.html index.htm ; 
       }

De asemenea, găsiți următoarea secțiune (care trebuie comentată) și dezarhivați-o. Această secțiune este folosită pentru a transmite script-urile PHP pe serverul FastCGI ascultând pe 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; 
       }

Salvați modificările din fișier și ieșiți.

Testarea Nginx și PHP-FPM

Următorul pas este să testați dacă Nginx funcționează bine împreună cu PHP-FPM creând un nou fișier de test PHP în directorul DocumentRoot afișate.

$ echo "<?php phpinfo(); ?>" | sudo tee /srv/www/htdocs/info.php

Acum trebuie să verificăm dacă configurația Nginx este corectă după cum urmează, înainte de a începe să reporniți serviciul.

$ sudo nginx -t

Dacă sintaxa de configurare Nginx este în regulă, continuați și reporniți serviciile Nginx și PHP-FPM pentru modificările recente pentru a efectua efecte.

$ sudo systemctl restart nginx php-fpm

Deschideți acum un browser web și navigați la adresa http: //localhost/info.php pentru a verifica configurația PHP așa cum se arată în următoarea imagine.

Instalarea și configurarea PhpMyAdmin

phpMyAdmin este o unealtă gratuită, ușor de utilizat și populară scrisă în PHP, construită pentru administrarea serverului MySQL pe Web. Sprijină o gamă largă de operațiuni pe MySQL și MariaDB .

Pentru a instala phpMyAdmin pe OpenSuse , executați următoarea comandă.

$ sudo zypper install phpMyAdmin

După ce instalarea este finalizată, creați un nou fișier de configurare vhost pentru a accesa phpMyAdmin după cum se arată.

$ sudo vim /etc/nginx/vhosts.d/phpmyadmin.conf

Adăugați următoarea configurație în fișier.

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; 
   } 
} 

Salvați modificările și închideți fișierul. Apoi, reporniți serviciul Nginx cu următoarea comandă.

$ sudo systemctl restart nginx

Acum mergeți la browserul dvs. web și introduceți adresa http:/localhost/phpMyAdmin . O pagină de autentificare phpMyAdmin ar trebui să fie afișată așa cum se arată în următoarea imagine de ecran. Introduceți acreditările de autentificare pentru root și faceți clic pe Du-te .

Asta e tot! În acest tutorial v-am explicat cum să instalați un stiva LEMP cu Nginx , MariaDB puternic> PHP-FPM și PhpMyAdmin pe edițiile server/desktop OpenSuse . Dacă întâmpinați probleme în timpul configurării, adresați întrebările dvs. printr-un formular de comentarii de mai jos.