Shigar LEMP - Nginx, PHP, MariaDB da PhpMyAdmin a cikin OpenSUSE
LEMP ko Linux, Injin-x, MySQL da tari na PHP babban tarin software ne wanda ya ƙunshi buɗaɗɗen software wanda aka sanya akan tsarin aiki na Linux don gudanar da aikace-aikacen yanar gizo na tushen PHP wanda uwar garken HTTP ta Nginx da tsarin sarrafa bayanai na MySQL/MariaDB.
Wannan koyawa za ta jagorance ku kan yadda ake shigar da tarin LEMP tare da Nginx, MariaDB, PHP, PHP-FPM da PhpMyAdmin akan bugu na OpenSuse/bugu na tebur.
Shigar da Nginx HTTP Server
Nginx mai sauri ne kuma amintaccen HTTP da uwar garken wakili wanda zai iya ɗaukar nauyin buƙatun HTTP mafi girma. Yana amfani da hanyar da ba ta dace ba don sarrafa buƙatun, kuma tsarin gine-ginen da ke tafiyar da al'amuransa na iya samar da ƙarin aikin da ake iya faɗi a ƙarƙashin manyan kaya.
Don shigar da Nginx akan OpenSuse, gudanar da umarni mai zuwa.
$ sudo zypper install nginx
Da zarar an shigar da Nginx, zaku iya fara sabis ɗin a yanzu, sannan kunna shi don farawa ta atomatik a lokacin taya kuma tabbatar da matsayin Nginx ta hanyar bin umarni masu zuwa.
$ sudo systemctl start nginx $ sudo systemctl enable nginx $ sudo systemctl status nginx
A wannan gaba, uwar garken gidan yanar gizon Nginx yakamata ya tashi yana aiki, zaku iya tabbatar da matsayin ta amfani da umarnin netstat kamar yadda aka nuna.
$ sudo netstat -tlpn | grep nginx
Yanzu, muna buƙatar gwada idan shigarwar Nginx yana aiki lafiya. Ba kamar sauran rabawa na Linux ba, a ƙarƙashin openSUSE, Nginx ba shi da ma'auni index.html
daftarin aiki a cikin babban fayil tushen yanar gizo. Muna buƙatar ƙirƙirar sabon fayil na index.html
a ƙarƙashin tushen adireshin gidan yanar gizon \/srv/www/htdocs\
kamar yadda aka nuna.
$ echo "<h1>Nginx is running fine on openSUSE Leap</h1>" | sudo tee /srv/www/htdocs/index.html
Idan an shigar da Firewalld, kuna buƙatar buɗe tashar jiragen ruwa 80 da 443 don ba da damar zirga-zirgar gidan yanar gizo akan Tacewar zaɓi.
$ sudo firewall-cmd --permanent --add-port=80/tcp $ sudo firewall-cmd --permanent --add-port=443/tcp $ sudo firewall-cmd --reload
Bayan haka, buɗe mai binciken gidan yanar gizo kuma kewaya zuwa adireshin http://localhost
kuma tabbatar da shafin Nginx.
Shigar da MariaDB Database Server
MariaDB cokali mai yatsa ce mai kyauta kuma buɗaɗɗen tsarin gudanarwar bayanai na MySQL. Masu haɓakawa na asali na MySQL ne suka haɓaka shi kuma an yi niyya don kasancewa a buɗe tushen. MariaDB yana da sauri, mai daidaitawa kuma mai ƙarfi, tare da wadataccen yanayin muhalli na injunan ajiya, plugins da sauran kayan aikin da yawa suna sa ya zama mai fa'ida don nau'ikan amfani da yawa.
Don shigar da MariaDB akan OpenSuse, gudanar da umarni mai zuwa.
$ sudo zypper install mariadb mariadb-client
Na gaba, fara sabis na MariaDB a yanzu, sannan kunna shi don farawa ta atomatik a lokacin taya kuma duba matsayinsa.
$ sudo systemctl start mariadb $ sudo systemctl enable mariadb $ sudo systemctl status mariadb
Mataki na gaba mai mahimmanci a ƙarƙashin wannan sashe shine tabbatar da shigarwar uwar garken MariaDB. Don haka gudanar da rubutun tsaro wanda ke jigilar kaya tare da kunshin MariaDB, kamar yadda aka nuna.
Lura: Gudun rubutun tsaro na MariaDB da duk sassansa ana ba da shawarar sosai ga duk sabar MariaDB a samarwa.
$ sudo mysql_secure_installation
Bayan gudanar da rubutun, karanta bayanin a kowane mataki a hankali. Ya kamata ku saita kalmar sirri ta tushen mai amfani, cire masu amfani da ba a san su ba, kashe tushen tushen nesa, cire bayanan gwajin da samun dama gare shi sannan a sake shigar da teburin gata.
Shigarwa da Sanya PHP da PHP-FPM
PHP-FPM (gajeren don PHP FastCGI Process Manager) shine madadin FastCGI daemon don PHP tare da wasu ƙarin fasali kuma an tsara shi don ɗaukar manyan lodi. Yana kula da wuraren waha (ma'aikatan da za su iya amsa buƙatun PHP) don cimma wannan. Mahimmanci, yana da sauri fiye da hanyoyin tushen CGI na gargajiya, kamar SUPHP, don mahallin PHP masu amfani da yawa.
Don shigar da PHP da PHP-FPM tare da samfuran da ake buƙata suna gudanar da umarni mai zuwa.
$ sudo zypper install php php-mysql php-fpm php-gd php-mbstring
Kafin mu ci gaba don fara sabis na PHP-FPM, muna buƙatar ƙirƙirar fayilolin sanyi da ake buƙata daga tsoffin fayilolin da aka bayar yayin shigarwa, kuma saita sabis ɗin da aka shirya don aiki.
$ 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
Sa'an nan kuma buɗe babban fayil ɗin daidaitawa na php-fpm.conf
don gyarawa.
$ sudo vim /etc/php7/fpm/php-fpm.conf
Rarraba layi mai zuwa a lamba 24 kamar yadda aka nuna.
error_log = log/php-fpm.log
Ajiye kuma rufe fayil ɗin.
Na gaba, muna buƙatar ayyana madaidaitan saitunan don wuraren waha da aka tsara a cikin fayil ɗin sanyi na www.conf
.
$ sudo vim /etc/php7/fpm/php-fpm.d/www.conf
Da farko, saita mai Unix da mai rukunin ƙungiyoyi zuwa mai amfani da ƙungiyar Nginx. Yi wannan ta hanyar canza ƙimar mai amfani da ma'auni na rukuni daga no kowa
zuwa nginx
.
user = nginx group = nginx
Yanzu ajiye canje-canje a fayil ɗin kuma fita dashi.
Bugu da ƙari, akwai mafi mahimmanci guda ɗaya don aiwatarwa, wanda ke tabbatar da PHP-FPM a cikin fayil ɗin /etc/php/cli/php.ini
.
$ sudo vim /etc/php7/cli/php.ini
Nemo layin ;cgi.fix_pathinfo=1
kuma canza shi zuwa.
cgi.fix_pathinfo=0
Ajiye canje-canje a cikin fayil kuma fita.
Na gaba, fara sabis ɗin PHP-FPM a yanzu, sannan kunna shi don farawa ta atomatik a lokacin taya kuma duba matsayinsa.
$ sudo systemctl start php-fpm $ sudo systemctl enable php-fpm $ sudo systemctl status php-fpm
Saita Nginx don Aiki tare da PHP-FPM
A wannan gaba, muna buƙatar saita Nginx don yin aiki tare da PHP-FPM a cikin tsoho fayil ɗin Nginx.
$ sudo vim /etc/nginx/nginx.conf
Sa'an nan nemi sashe na gaba, kuma ƙara index.php
a cikin jerin fayilolin fihirisar da ake sa ran.
location / { root /srv/www/htdocs/; index index.php index.html index.htm ; }
Haka nan nemo sashe na gaba (wanda ya kamata a yi sharhi) kuma ka ba da amsa. Ana amfani da wannan sashe don ƙaddamar da rubutun PHP zuwa saurarar FastCGI akan 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; }
Ajiye canje-canje a cikin fayil kuma fita.
Gwajin Nginx da PHP-FPM
Mataki na gaba shine gwada idan Nginx yana aiki da kyau tare da PHP-FPM ta hanyar ƙirƙirar sabon fayil ɗin gwajin PHP a ƙarƙashin DocumentRoot directory kamar yadda aka nuna.
$ echo "<?php phpinfo(); ?>" | sudo tee /srv/www/htdocs/info.php
Yanzu muna buƙatar bincika idan tsarin Nginx daidai ne kamar haka, kafin mu ci gaba da sake kunna sabis ɗin.
$ sudo nginx -t
Idan tsarin daidaitawar Nginx yayi kyau, ci gaba kuma sake kunna ayyukan Nginx da PHP-FPM don canje-canjen kwanan nan don yin tasiri.
$ sudo systemctl restart nginx php-fpm
Yanzu buɗe mai binciken gidan yanar gizo kuma kewaya zuwa adireshin http://localhost/info.php
don tabbatar da daidaitawar PHP kamar yadda aka nuna a hoton da ke biyowa.
Shigarwa da Sanya PhpMyAdmin
phpMyAdmin kyauta ne, mai sauƙin amfani kuma sanannen kayan aiki da aka rubuta a cikin PHP, wanda aka gina don gudanar da uwar garken MySQL akan Yanar gizo. Yana ɗaukar ayyuka da yawa akan MySQL da MariaDB.
Don shigar da phpMyAdmin akan OpenSuse, gudanar da umarni mai zuwa.
$ sudo zypper install phpMyAdmin
Da zarar an gama shigarwa, ƙirƙirar sabon fayil ɗin sanyi na vhost don samun damar phpMyAdmin kamar yadda aka nuna.
$ sudo vim /etc/nginx/vhosts.d/phpmyadmin.conf
Ƙara waɗannan saitunan masu biyowa zuwa fayil.
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; } }
Ajiye canje-canje kuma rufe fayil ɗin. Sannan sake kunna sabis na Nginx tare da umarni mai zuwa.
$ sudo systemctl restart nginx
Yanzu je zuwa burauzar gidan yanar gizon ku kuma buga adireshin http://localhost/phpMyAdmin. Shafin shiga phpMyAdmin ya kamata ya nuna kamar yadda aka nuna a cikin hoton da ke biyowa. Shigar da tushen bayanan mai amfani da bayanan shiga bayanan bayanan kuma danna Go.
Shi ke nan! A cikin wannan koyawa, mun bayyana muku yadda ake shigar da tarin LEMP tare da Nginx, MariaDB, PHP, PHP-FPM da PhpMyAdmin akan sabar OpenSuse/bugu na tebur. Idan kuna fuskantar kowace matsala yayin saiti, yi tambayoyinku ta hanyar sharhi da ke ƙasa.