Ubuntu 18.04-de Nginx, MariaDB, PHP we PhpMyAdmin guruň


LEMP ýygyndysy Linux ulgamynda gurnalan Nginx (Motor X diýilýär), MySQL/MariaDB we PHP/Python paketlerinden durýar we web sahypalaryny we amaly programmalary ýerleşdirmek ulgamy hökmünde bilelikde işlemek üçin düzülendir. Bu gollanmada, Ubuntu 18.04-de LEMP we iň soňky phpMyAdmin-i nädip gurmalydygyny görkezeris.

PhpMyAdmin, giň amallary goldaýan MySQL we MariaDB maglumat bazasyny dolandyrmak üçin mugt, açyk çeşme, meşhur we içgin web esasly programma.

Web interfeýsinden maglumat bazalaryňyzy dolandyrmak üçin köp sanly aýratynlyk bar. Dürli formatda maglumatlary import etmäge we eksport etmäge, birnäçe serweri dolandyrmaga, Query-by-example (QBE) ulanyp çylşyrymly talaplary gurmaga, dürli formatda maglumat bazasynyň ýerleşişiniň grafikasyny döretmäge we başga-da köp zatlara mümkinçilik berýär.

  1. Minimal Ubuntu 18.04 serwerini gurmak.
  2. SSH sessiýasy arkaly serwere girmek.
  3. Kömek ýa-da ähli buýruklary işletmek üçin sudo buýrugyny ulanyň.

Bu makalada Ubuntu 18.04-de PhpMyAdmin bilen LEMP stackini nädip gurmalydygyny düşündireris.

1-nji ädim: Ubuntu 18.04-de Nginx web serwerini guruň

1. Ilki bilen programma üpjünçilik paketleriňizi täzeläp başlaň, soňra açyk çeşme, çalt we ýokary öndürijilikli web serweri, ýük balanserini we konfigurasiýa diline düşünmek aňsat tersi proksi guruň.

$ sudo apt update
$ sudo apt install nginx

2. Ony guranyňyzdan soň, Nginx hyzmaty awtomatiki başlamaly we ýüklenýän wagty başlamaga mümkinçilik döreder, işleýändigini ýa-da işlemeýändigini barlap bilersiňiz.

$ sudo systemctl status nginx

3. Eger gorag diwary açyk bolsa we ulgamyňyzda işleýän bolsa, müşderiniň isleglerine Nginx web serwerine rugsat bermek we diwar gorag düzgünlerini täzeden açmak üçin 80 (HTTP) we 443 (HTTPS) portlaryny açmaly.

$ sudo ufw allow 80/tcp
$ sudo ufw allow 443/tcp
$ sudo ufw reload

4. Ondan soň, Nginx bukjasynyň üstünlikli gurlandygyny we gowy işleýändigini barlaň, bu URL-i web brauzeriňize ýazyň.

http://domain_name/
OR
http://SERVER_IP/

Nginx deslapky web sahypasyny görseňiz, gurnamagyňyzyň gowy işleýändigini aňladýar.

2-nji ädim: MariDB-ni Ubuntu 18.04-de guruň

5. Soňra “MariaDB” maglumat bazasyny dolandyryş ulgamyny guruň.

$ sudo apt install mariadb-server mariadb-client

6. MariaDB gurlandan soň, hyzmat awtomatiki başlamaly we ony aşakdaky buýruk bilen barlap bilersiňiz.

$ sudo systemctl status mysql

7. Ondan soň, paket bilen gelýän howpsuzlyk skriptini işledip, MariaDB gurnamagyňyzy üpjün ediň.

$ sudo mysql_secure_installation

Soňra aşakdaky howpsuzlyk soraglaryna hawa/y giriziň:

  • Kök parolyny düzüň? [Y/n]: y
  • Anonim ulanyjylary aýyrýarsyňyzmy? (Hawa üçin y | Y basyň, Nook üçin başga açar): y
  • Kök girişini uzakdan gadagan ediň? (Hawa üçin y | Y basyň, Nook üçin başga açar): y
  • Synag maglumatlar bazasyny aýyryň we oňa girip bilersiňizmi? (Hawa üçin y | Y basyň, Nook üçin başga açar): y
  • artykmaçlyk tablisalaryny täzeden ýükläňmi? (Hawa üçin y | Y basyň, Nook üçin başga açar): y

3-nji ädim: Ubuntu 18.04-de PHP guruň

8. PHP web sahypalarynda dinamiki mazmun döretmek üçin ulanylýan meşhur serwer tarapy skript dili. Aşakdaky buýrugy ulanyp, PHP, PHP-FPM we beýleki modullary gurnap bilersiňiz (Ubuntu reposynyň deslapky wersiýasy PHP 7.2).

$ sudo apt install php php-fpm php-common php-mysql php-gd php-cli

9. PHP gurlandan soň, PHP7.2-FPM hyzmaty hem awtomatiki başlamaly, aşakdaky buýrugy ulanyp hyzmaty barlap bilersiňiz.

$ sudo systemctl status php7.2-fpm

10. Ondan soň, /etc/php/7.2/fpm/php.ini konfigurasiýa faýlynda PHP esasly web programmalaryna ýa-da sahypalaryna hyzmat etmek üçin PHP-FPM-i dogry düzüň.

$ sudo vim /etc/php/7.2/fpm/php.ini

; cgi.fix_pathinfo=1 gözläň we aşakdakylara üýtgediň.

cgi.fix_pathinfo=0

11. Soňra, Nginx deslapky serwer blok konfigurasiýa faýlynda (/ etc/nginx/sites-available/default) PHP skriptlerini gaýtadan işlemek üçin PHP-FPM sazlaň.

$ sudo vim /etc/nginx/sites-available/default 

PHP skriptlerini FastCGI serwerine geçirmek üçin aşakdaky konfigurasiýa bölümini açmaň.

location ~ \.php$ {
            include snippets/fastcgi-php.conf;
        	fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
}

Üýtgeşmeler girizeniňizden soň, soňky üýtgeşmeleri ulanmak üçin php7.2-fpm we nginx hyzmatlaryny täzeden açyň.

$ sudo systemctl restart php7.2-fpm
$ sudo systemctl restart nginx

12. Indi, ýeke-täk buýruk bilen web serweriňiziň resminama kökünde ýönekeý info.php sahypasyny döretmek arkaly PHP sazlamany synap bilersiňiz.

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

13. Ondan soň, web brauzerini açyň we php maglumat sahypasyny görmek üçin aşakdaky URL-den birini giriziň.

http://domain_name/info.php
OR
http://SERVER_IP/info.php

4-nji ädim: PhpMyAdmin-i Ubuntu 18.04-de guruň

14. Iň soňunda web brauzeriniň rahatlygyndan MySQL/MariaDB maglumat bazalaryny dolandyrmak üçin PhpMyAdmin guruň.

$ sudo apt install phpmyadmin

Bukjany gurnamak prosesinde, phpMyAdmin-i işletmek üçin awtomatiki düzülmeli web serwerini saýlamagyňyz soralar. Nginx web serwerleriniň sanawynda ýok, diňe TAB düwmesini basyň we Enter basyň.

15. Ondan soň, phpmyadmin üçin maglumat bazasyny döretmek üçin MySQL-iň parolyny giriziň.

16. Bu pursatda phpmyadmin gurmak prosesi doly bolmaly. Aşakdaky baglanyşygy döredip, brauzeriňizdäki phpMyAdmin interfeýsine girip bilersiňiz.

$ sudo ln -s  /usr/share/phpmyadmin /var/www/html/phpmyadmin

Phpmyadmin indeks faýly index.php bolany üçin, indiki skrinshotda görkezilişi ýaly, deslapky serwer blok konfigurasiýa faýlynda/etc/nginx/sites-available/default-da indeks faýllarynyň sanawyna goşandygyňyza göz ýetiriň.

index index.php index.html index.htm index.nginx-debian.html;

17. Ondan soň, ret edilen ýalňyşlyklaryň öňüni almak üçin phpmyadmin kök katalogyna degişli rugsatlary belläň.

$ sudo chmod 775 -R /usr/share/phpmyadmin/
$ sudo chown root:nginx -R /usr/share/phpmyadmin/

18. Indi web brauzerinden PhpMyAdmin-e girmek üçin aşakdaky URL ýazyň.

http://domain_name/phpmyadmin
OR
http://SERVER_IP/phpmyadmin

Soňra MySQL/MariaDB kök ulanyjy adyňyzy we parolyňyzy ulanyp phpMyAdmin-de tassyklaň we lezzet alyň.

Bellik: Kök girişi şowsuz bolsa (MySQL 5.7-den başlap sudo talap edýär), terminaldan kök hasaby ulanyp mariadb gabygyna girmek üçin täze administrator ulanyjy hasaby döretmeli bolmagyňyz mümkin.

$ sudo mysql -u root -p
MariaDB [(none)]> CREATE USER 'admin'@'localhost' IDENTIFIED BY '[email !#254tecmint';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' WITH GRANT OPTION;
MariaDB [(none)]> FLUSH PRIVILEGES;

Indi MySQL maglumat bazalaryňyzy dolandyrmak üçin PhpMyAdmin-a täzeden girmek üçin täze şahsyýet maglumatlaryny ulanyň.

PhpMyAdmin web interfeýsiňizi goramak üçin şu makalany barlaň: 4 PhpMyAdmin web interfeýsini goramak üçin peýdaly maslahatlar.

Bu! Bu makalada Ubuntu 18.04-de iň soňky PhpMyAdmin bilen LEMP stakasyny nädip sazlamalydygyny düşündirdik. Soraglaryňyz bar bolsa, aşakdaky seslenme formasy arkaly bize habar beriň.