Instalējiet LEMP - Nginx, PHP, MariaDB un PhpMyAdmin OpenSUSE


LEMP vai Linux, Engine-x, MySQL un PHP kaudze ir programmatūras pakete, kas sastāv no atvērtā pirmkoda programmatūras, kas instalēta Linux operētājsistēmā, lai palaistu PHP balstītas tīmekļa lietojumprogrammas, kuras darbina Nginx HTTP serveris un MySQL/MariaDB datu bāzes pārvaldības sistēma.

Šī apmācība palīdzēs jums instalēt LEMP kaudzīti ar Nginx, MariaDB, PHP, PHP-FPM un PhpMyAdmin OpenSuse servera/darbvirsmas izdevumos.

Nginx HTTP servera instalēšana

Nginx ir ātrs un uzticams HTTP un starpniekserveris, kas spēj apstrādāt lielāku HTTP pieprasījumu slodzi. Pieprasījumu apstrādei tiek izmantota asinhrona, uz notikumiem balstīta pieeja, un tā modulārā, uz notikumiem balstītā arhitektūra var nodrošināt vairāk paredzamu veiktspēju lielās slodzēs.

Lai instalētu Nginx OpenSuse, palaidiet šādu komandu.

$ sudo zypper install nginx

Kad Nginx ir instalēts, jūs tagad varat sākt pakalpojumu, pēc tam iespējot to automātiski startēt sāknēšanas laikā un pārbaudīt Nginx statusu, izpildot šādas komandas.

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

Šajā brīdī Nginx tīmekļa serverim vajadzētu būt darbam un darbam. Jūs varat arī pārbaudīt statusu, izmantojot komandu netstat, kā parādīts.

$ sudo netstat -tlpn | grep nginx

Tagad mums jāpārbauda, vai Nginx instalācija darbojas labi. Atšķirībā no citiem Linux izplatījumiem, izmantojot openSUSE, Nginx tīmekļa saknes mapē nav standarta dokumenta index.html . Mums ir jāizveido jauns index.html fails tīmekļa tīmekļa direktorijā "/ srv/www/htdocs" kā parādīts.

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

Ja esat instalējis firewalld, jums jāatver 80. un 443. ports, lai atļautu tīmekļa trafiku ugunsmūrī.

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

Pēc tam atveriet tīmekļa pārlūkprogrammu un dodieties uz adresi http:// localhost un pārbaudiet Nginx lapu.

MariaDB datu bāzes servera instalēšana

MariaDB ir bezmaksas un atvērta koda MySQL relāciju datu bāzes pārvaldības sistēmas dakša. To ir izstrādājuši sākotnējie MySQL izstrādātāji, un tā mērķis ir palikt atvērtā koda. MariaDB ir ātrs, pielāgojams un izturīgs, ar bagātīgu uzglabāšanas motoru ekosistēmu, spraudņiem un daudziem citiem rīkiem padara to ļoti universālu visdažādākajos lietošanas gadījumos.

Lai instalētu MariaDB OpenSuse, palaidiet šādu komandu.

$ sudo zypper install mariadb mariadb-client 

Pēc tam pagaidām palaidiet pakalpojumu MariaDB, pēc tam iespējojiet to automātiski startēt sāknēšanas laikā un pārbaudiet tā statusu.

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

Nākamais kritiskais solis šajā sadaļā ir nodrošināt MariaDB servera instalēšanu. Tāpēc palaidiet drošības skriptu, kas tiek piegādāts kopā ar MariaDB paketi, kā parādīts.

Piezīme. Visiem MariaDB serveriem, kas tiek ražoti, ir ļoti ieteicams palaist MariaDB drošības skriptu un visas tā daļas.

$ sudo mysql_secure_installation 

Pēc skripta palaišanas uzmanīgi izlasiet aprakstu katrā solī. Jums vajadzētu iestatīt root lietotāja paroli, noņemt anonīmus lietotājus, atspējot attālo root piekļuvi, noņemt testa datu bāzi un piekļuvi tai un visbeidzot atkārtoti ielādēt privilēģiju tabulu.

PHP un PHP-FPM instalēšana un konfigurēšana

PHP-FPM (saīsinājums no PHP FastCGI procesu pārvaldnieka) ir alternatīva FastCGI dēmona versija PHP ar dažām papildu funkcijām un paredzēta lielu slodžu apstrādei. Lai to paveiktu, tiek uzturēti baseini (darbinieki, kas var atbildēt uz PHP pieprasījumiem). Svarīgi ir tas, ka daudzlietotāju PHP vidēs tas ir ātrāks nekā tradicionālās CGI balstītās metodes, piemēram, SUPHP.

Lai instalētu PHP un PHP-FPM kopā ar nepieciešamajiem moduļiem, izpildiet šādu komandu.

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

Pirms sākt PHP-FPM pakalpojumu, mums jāizveido nepieciešamie konfigurācijas faili no noklusējuma failiem, kas tiek nodrošināti instalēšanas laikā, un jākonfigurē pakalpojums, kas ir gatavs darbībai.

$ 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

Pēc tam rediģēšanai atveriet galveno konfigurācijas failu php-fpm.conf .

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

Atzīmējiet nākamo rindiņu pie 24. rindas, kā parādīts.

error_log = log/php-fpm.log

Saglabājiet un aizveriet failu.

Pēc tam konfigurācijas failā www.conf ir jādefinē pareizie konfigurēto baseinu iestatījumi.

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

Vispirms konfigurējiet procesu Unix īpašnieku un grupas īpašnieku Nginx lietotājam un grupai. Dariet to, mainot lietotāja un grupas parametru vērtības no nobody uz nginx .

user = nginx
group = nginx

Tagad saglabājiet failā veiktās izmaiņas un izejiet no tās.

Turklāt ir jāveic vēl viena svarīga konfigurācija, kas nodrošina PHP-FPM aizsardzību failā /etc/php/cli/php.ini .

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

Meklējiet līniju ; cgi.fix_pathinfo = 1 un nomainiet to uz.

cgi.fix_pathinfo=0

Saglabājiet izmaiņas failā un izejiet.

Pēc tam pagaidām palaidiet pakalpojumu PHP-FPM, pēc tam iespējojiet to automātiski startēt sāknēšanas laikā un pārbaudiet tā statusu.

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

Nginx konfigurēšana darbam ar PHP-FPM

Šajā brīdī mums ir jākonfigurē Nginx darbam ar PHP-FPM noklusējuma Nginx konfigurācijas failā.

$ sudo vim /etc/nginx/nginx.conf

Pēc tam meklējiet nākamo sadaļu un pievienojiet index.php paredzamo indeksu failu sarakstā.

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

Atrodiet arī nākamo sadaļu (kuru vajadzētu komentēt) un komentējiet to. Šī sadaļa tiek izmantota, lai pārsūtītu PHP skriptus uz FastCGI serveri, kas klausās 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; 
       }

Saglabājiet izmaiņas failā un izejiet.

Nginx un PHP-FPM pārbaude

Nākamais solis ir pārbaudīt, vai Nginx darbojas labi kopā ar PHP-FPM, izveidojot jaunu PHP testa failu direktorijā DocumentRoot, kā parādīts.

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

Tagad mums jāpārbauda, vai Nginx konfigurācija ir pareiza, pirms turpinām restartēt pakalpojumu.

$ sudo nginx -t

Ja Nginx konfigurācijas sintakse ir pareiza, turpiniet un restartējiet Nginx un PHP-FPM pakalpojumus, lai pēdējās izmaiņas būtu efektīvas.

$ sudo systemctl restart nginx php-fpm

Tagad atveriet tīmekļa pārlūkprogrammu un dodieties uz adresi http://localhost/info.php , lai pārbaudītu PHP konfigurāciju, kā parādīts nākamajā ekrānuzņēmumā.

PhpMyAdmin instalēšana un konfigurēšana

phpMyAdmin ir bezmaksas, vienkāršs, viegli lietojams un populārs PHP rakstīts rīks, kas paredzēts MySQL servera administrēšanai tīmeklī. Tas nodrošina plašu darbību klāstu MySQL un MariaDB.

Lai instalētu phpMyAdmin OpenSuse, palaidiet šādu komandu.

$ sudo zypper install phpMyAdmin

Kad instalēšana ir pabeigta, izveidojiet jaunu vhost konfigurācijas failu, lai piekļūtu phpMyAdmin, kā parādīts.

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

Pievienojiet failam šīs konfigurācijas.

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

Saglabājiet izmaiņas un aizveriet failu. Pēc tam restartējiet Nginx pakalpojumu ar šādu komandu.

$ sudo systemctl restart nginx

Tagad dodieties uz tīmekļa pārlūkprogrammu un ierakstiet adresi http:// localhost/phpMyAdmin. PhpMyAdmin pieteikšanās lapai jābūt parādītai, kā parādīts nākamajā ekrānuzņēmumā. Ievadiet datu bāzes saknes lietotāja pieteikšanās akreditācijas datus un noklikšķiniet uz Sākt.

Tas ir viss! Šajā apmācībā mēs esam paskaidrojuši, kā OpenSuse servera/darbvirsmas izdevumos instalēt LEMP kaudzīti ar Nginx, MariaDB, PHP, PHP-FPM un PhpMyAdmin. Ja iestatīšanas laikā rodas kādas problēmas, uzdodiet jautājumus, izmantojot zemāk esošo komentāru veidlapu.