Installige OpenSUSE-i LEMP - Nginx, PHP, MariaDB ja PhpMyAdmin


LEMP või Linux, Engine-x, MySQL ja PHP stack on tarkvarakomplekt, mis koosneb Linuxi operatsioonisüsteemi installitud avatud lähtekoodiga tarkvarast PHP-põhiste veebirakenduste käitamiseks, mida toetab Nginx HTTP server ja MySQL/MariaDB andmebaaside haldussüsteem.

See õpetus aitab teil installida OpenSuse serveri/töölaua väljaannetele NEMINXi, MariaDB, PHP, PHP-FPMi ja PhpMyAdminiga LEMP-i virna.

Nginxi HTTP-serveri installimine

Nginx on kiire ja usaldusväärne HTTP- ja puhverserver, mis saab hakkama suurema HTTP-päringute koormusega. Taotluste töötlemisel kasutatakse asünkroonset sündmustepõhist lähenemisviisi ja selle modulaarne sündmuspõhine arhitektuur suudab suurte koormuste korral paremini ennustada.

Nginxi installimiseks OpenSuse'i käivitage järgmine käsk.

$ sudo zypper install nginx

Kui Nginx on installitud, saate teenuse praegu käivitada, seejärel lubada selle käivitamisel automaatselt käivitada ja kontrollida järgmiste käskude abil Nginxi olekut.

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

Siinkohal peaks Nginxi veebiserver olema töökorras ja oleku saate kontrollida ka käsu netstat abil, nagu näidatud.

$ sudo netstat -tlpn | grep nginx

Nüüd peame testima, kas Nginxi install töötab hästi. Erinevalt teistest Linuxi distributsioonidest pole OpenSUSE all Nginxil veebijuure kaustas standardset dokumenti index.html . Peame looma uue veebikataloogi \"/ srv/www/htdocs \" alla uue faili index.html .

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

Kui teil on installitud tulemüür, peate tulemüüris veebiliikluse lubamiseks avama pordid 80 ja 443.

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

Seejärel avage veebibrauser ja navigeerige aadressile http:// localhost ja kontrollige Nginxi lehte.

MariaDB andmebaasiserveri installimine

MariaDB on MySQL-i relatsiooniandmebaaside haldussüsteemi tasuta ja avatud lähtekoodiga kahvel. Selle on välja töötanud MySQLi algsed arendajad ja see on mõeldud avatud lähtekoodina püsimiseks. MariaDB on kiire, skaleeritav ja vastupidav, rikkaliku salvestusmootorite ökosüsteemiga, pistikprogrammid ja paljud muud tööriistad muudavad selle väga mitmekülgseks mitmesuguste kasutusjuhtumite jaoks.

MariaDB installimiseks OpenSuse'i käivitage järgmine käsk.

$ sudo zypper install mariadb mariadb-client 

Järgmisena käivitage praegu MariaDB teenus, seejärel lubage see käivitamisel automaatselt käivitada ja kontrollida selle olekut.

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

Selle jaotise järgmine kriitiline samm on MariaDB serveri installi kindlustamine. Seetõttu käivitage turvakript, mis tarnitakse koos MariaDB paketiga, nagu näidatud.

Märkus. MariaDB turbeskripti ja kõigi selle osade käitamine on väga soovitatav kõigile tootmises olevatele MariaDB serveritele.

$ sudo mysql_secure_installation 

Pärast skripti käivitamist lugege iga sammu kirjeldus hoolikalt läbi. Peaksite määrama juurkasutaja parooli, eemaldama anonüümsed kasutajad, keelama juurjuurdepääsu, eemaldama testandmebaasi ja sellele juurdepääsu ning lõpuks uuesti laadima õiguste tabeli.

PHP ja PHP-FPM installimine ja konfigureerimine

PHP-FPM (lühend PHP FastCGI protsessihaldurist) on PHP jaoks alternatiivne FastCGI deemon, millel on mõned lisavõimalused ja mis on mõeldud suurte koormuste käsitlemiseks. Selle haldamiseks on olemas kogumid (töötajad, kes saavad vastata PHP-päringutele). Oluline on see, et mitme kasutajaga PHP-keskkondades on see kiirem kui traditsioonilised CGI-põhised meetodid, näiteks SUPHP.

PHP ja PHP-FPM koos vajalike moodulitega installimiseks käivitage järgmine käsk.

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

Enne kui alustame teenuse PHP-FPM käivitamist, peame installimise käigus pakutavatest vaikefailidest looma vajalikud konfiguratsioonifailid ja seadistama teenuse töövalmis.

$ 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

Seejärel avage redigeerimiseks peamine konfiguratsioonifail php-fpm.conf .

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

Kommenteerige järgmine rida real 24, nagu näidatud.

error_log = log/php-fpm.log

Salvestage ja sulgege fail.

Järgmisena peame seadistama konfigureeritud failide õiged seadistused konfiguratsioonifailis www.conf .

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

Esmalt konfigureerige protsesside Unixi omanik ja rühmaomanik Nginxi kasutaja ja rühma jaoks. Tehke seda, muutes kasutaja ja rühma parameetrite väärtused väärtuselt nobody väärtuseks nginx .

user = nginx
group = nginx

Nüüd salvestage faili muudatused ja väljuge sellest.

Lisaks on veel üks oluline konfiguratsioon, mis tuleb täita, mis tagab PHP-FPM-i failis /etc/php/cli/php.ini .

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

Otsige rida ; cgi.fix_pathinfo = 1 ja muutke see väärtuseks.

cgi.fix_pathinfo=0

Salvestage muudatused faili ja väljuge.

Järgmisena käivitage praegu PHP-FPM-teenus, seejärel lubage see käivitamisel automaatselt käivitada ja kontrollida selle olekut.

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

Nginxi seadistamine tööle PHP-FPM-iga

Siinkohal peame Nginxi konfigureerima Nginxi vaikimisi konfiguratsioonifailis töötama PHP-FPM-iga.

$ sudo vim /etc/nginx/nginx.conf

Seejärel otsige järgmist jaotist ja lisage oodatavate indeksfailide loendisse index.php .

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

Samuti leidke järgmine jaotis (mida tuleks kommenteerida) ja kommenteerige see. Seda jaotist kasutatakse PHP-skriptide edastamiseks FastCGI-serverile, mis kuulab 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; 
       }

Salvestage muudatused faili ja väljuge.

Nginxi ja PHP-FPM testimine

Järgmine samm on testida, kas Nginx töötab koos PHP-FPM-iga hästi, luues uue PHP testifaili kataloogi DocumentRoot alla, nagu näidatud.

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

Nüüd peame enne teenuse taaskäivitamist kontrollima, kas Nginxi konfiguratsioon on õige.

$ sudo nginx -t

Kui Nginxi seadistussüntaks on korras, jätkake Nginxi ja PHP-FPM-i teenuste taaskäivitamist, et hiljutised muudatused oleksid tõhusad.

$ sudo systemctl restart nginx php-fpm

Nüüd avage veebibrauser ja navigeerige aadressile http://localhost/info.php , et kontrollida PHP konfiguratsiooni, nagu on näidatud järgmisel ekraanipildil.

PhpMyAdmini installimine ja seadistamine

phpMyAdmin on tasuta lihtne PHP-s kirjutatud hõlpsasti kasutatav ja populaarne tööriist, mis on loodud MySQL-i serveri haldamiseks veebis. See hõlmab mitmesuguseid toiminguid MySQL-is ja MariaDB-s.

PhpMyAdmini installimiseks OpenSuse'i käivitage järgmine käsk.

$ sudo zypper install phpMyAdmin

Kui installimine on lõpule jõudnud, looge uus vhosti konfiguratsioonifail, et pääseda juurde phpMyAdminile, nagu näidatud.

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

Lisage failile järgmised konfiguratsioonid.

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

Salvestage muudatused ja sulgege fail. Seejärel taaskäivitage teenus Nginx järgmise käsuga.

$ sudo systemctl restart nginx

Nüüd minge oma veebibrauserisse ja tippige aadress http:// localhost/phpMyAdmin. PhpMyAdmini sisselogimisleht peaks ilmuma, nagu on näidatud järgmisel ekraanipildil. Sisestage oma andmebaasi juurkasutaja sisselogimisandmed ja klõpsake nuppu Mine.

See on kõik! Selles õpetuses oleme selgitanud, kuidas installida LEMP-virn koos Nginxi, MariaDB, PHP, PHP-FPMi ja PhpMyAdminiga OpenSuse serveri/töölaua väljaannetesse. Kui seadistamise ajal on probleeme, esitage oma küsimused alloleva kommentaarivormi kaudu.