Shigar da LEMP (Nginx, PHP, MySQL tare da injin MariaDB da PhpMyAdmin) a cikin Arch Linux


Saboda ƙirar Sakinta na Rolling wanda ke rungumar yanke software na shekaru Arch Linux ba a tsara shi ba kuma an haɓaka shi don aiki azaman sabar don samar da ingantaccen sabis na cibiyar sadarwa saboda yana buƙatar ƙarin lokaci don kulawa, haɓaka haɓakawa da daidaitawar fayil mai ma'ana.

Amma, har yanzu, saboda Arch Linux ya zo tare da shigarwar CD core tare da ƙaramin software da aka riga aka shigar, yana iya wakiltar ƙaƙƙarfan tushen farawa don shigar da mafi yawan shahararrun sabis na cibiyar sadarwa a wannan kwanaki, wannan gami da < b>LEMP ko LAMP, Apache Web Server, Nginx, PHP, SQL databases, Samba, FTP sabobin, BIND da sauransu, yawancin su ana samar da su daga Arch Ma'ajiyar hukuma ta Linux da sauran su daga AUR.

Wannan koyawa za ta jagoranci ta hanyar shigarwa da daidaitawa LEMPtari (Nginx, PHP , MySQL tare da injin MariaDB da PhpMyAdmin) daga nesa ta amfani da SSH, wanda zai iya samar da tushe mai ƙarfi don gina Aikace-aikacen Sabar Yanar Gizo.

Jagoran Shigar Arch Linux na baya, ban da ɓangaren ƙarshe akan sadarwar tare da DHCP.

Mataki 1: Sanya Static IP akan Interface Interface

1. Bayan mafi ƙarancin Arch Linux core shigarwa sake kunna uwar garken, shiga tare da tushen asusun ko makamancin sudo account, kuma gano tsarin NICs na'urar sunayen ta amfani da umarnin ip link.

# ip link

2. Don sanya madaidaicin saitunan cibiyar sadarwa za mu yi amfani da fakitin Netctl don sarrafa haɗin yanar gizo. Bayan kun sami nasarar gano sunayen Network Interfaces ku kwafi samfurin fayil ɗin ethernet-static zuwa hanyar tsarin netctl sannan ku canza sunansa zuwa tsarin suna mai siffantawa ( gwada amfani da kirtani “static” haɗe da sunan NIC), ta hanyar ba da umarni mai zuwa.

# cp /etc/netctl/examples/ethenet-static  /etc/netctl/static.ens33

3. Mataki na gaba shine don gyara wannan sabon fayil ɗin samfuri ta hanyar canza umarnin fayil da samar da saitunan cibiyar sadarwar ku na ainihi (Interface, IP/Netmask, Gateway, Broadcast, DNS) kamar a cikin bayanan da ke ƙasa.

# nano  /etc/netctl/static.ens33
Description='A basic static ethernet connection for ens33'
Interface=ens33
Connection=ethernet
IP=static
Address=('192.168.1.33/24')
Gateway='192.168.1.1'
Brodcast='192.168.1.255'
DNS=('192.168.1.1' '8.8.8.8')

4. Mataki na gaba shine fara haɗin haɗin yanar gizon ku ta hanyar netctl kayan aiki da kuma tabbatar da haɗin tsarin ku ta hanyar ba da umarni masu zuwa.

# netctl start static.ens33
# netctl status static.ens33

5. Idan ka sami matsayi mai fita mai aiki koren kun yi nasarar daidaita Network Interface ɗinku kuma lokaci yayi da za ku kunna ta kai tsaye akan manyan ayyuka. Hakanan gwada hanyar sadarwar ku ta hanyar aiwatar da umarni na ping akan sunan yanki sannan kuma, shigar da kunshin net-tools (mafi sanannen fasalin wannan fakitin shine umarnin ifconfig wanda Arch. masu haɓakawa suna ɗaukar nau'in lalacewa kuma sun maye gurbinsa da iproute2).

# netctl enable static.ens33
# pacman -S net-tools

6. Yanzu zaku iya gudanar da umarni na ifconfig don tabbatar da saitunan Network Interfaces sannan ku duba idan komai ya fito daidai, sannan reboot na'urar ku don tabbatarwa. komai yana cikin wurin kuma an daidaita shi da kyau.

# ping linux-console.net

Mataki 2: Shigar LEMP Software

Kamar yadda aka nuna a cikin wannan labarin gabatarwar LEMP yana tsaye ga Linux+Nginx+PHP/PhpMyAdmin+MySQL/MariaDB wanda shine ɗayan dandamalin aikace-aikacen yanar gizo da aka fi yaɗa a yau bayan LAMP. guda tari tare da Apache a cikin lissafi).

7. Kafin a zahiri shigar LEMP stack muna buƙatar sabunta tsarin sannan mu sami ikon sarrafawa zuwa uwar garken Arch Linux. Kamar yadda wataƙila kun sani OpenSSH shine babban ɗan takarar wannan aikin don haka ku ci gaba da shigar da shi, fara SSH daemon kuma kunna shi a faɗin tsarin.

$ sudo pacman -Syu
$ sudo pacman –S openssh
$ sudo systemctl start sshd
$ sudo systemctl status sshd
$ sudo systemctl enable sshd

Yanzu ne lokacin da za a ci gaba da shigarwarLEMP. Domin wannan koyawa tana nufin zama cikakken jagora zan raba LEMP tarin shigarwa zuwa kananan guda, mataki-mataki.

8. Da farko ka shigar da Nginx Web Server, sannan ka fara shi kuma ka tabbatar da matsayinsa ta hanyar ba da umarni masu zuwa.

$ sudo pacman -S nginx
$ sudo systemctl start nginx
$ sudo systemctl status nginx

9. Sabis na gaba da za a shigar shine MySQL database. Ba da umarni mai zuwa don shigar da uwar garken bayanan MySQL kuma zaɓi ingin MariaDB, sannan fara kuma tabbatar da matsayin daemon.

$ sudo pacman -S mysql
$ sudo systemctl start mysqld
$ sudo systemctl status mysqld

10. Mataki na gaba shine samar da ingantaccen yanayi mai aminci don bayanan bayanan MySQL ta hanyar samar da kalmar sirri don tushen asusun MySQL, cire asusun mai amfani da ba a san su ba, cire bayanan gwaji da asusun tushen da ake samun dama daga wajen localhost. Gudun umarni mai zuwa don inganta tsaro na MySQL, danna [Enter] don kalmar sirrin tushen asusun yanzu, sannan amsa E ga duk tambayoyin (kuma saita kalmar sirrin tushen asusun ku).

$ sudo mysql_secure_installation

Lura: Ta kowace hanya kada ku rikitar da tushen asusun MySQL tare da tushen tushen tsarin Linux - abubuwa ne daban-daban guda biyu - ba daban-daban ba amma suna gudana akan matakan daban-daban.

Don tabbatar da tsaro na MySQL zuwa bayanan bayanai ta amfani da mysql -u root -p umarni syntax, samar da tushen kalmar sirrin ku sannan ku bar bayanan tare da fita; umarni.

# mysql -u root -p

11. Yanzu lokaci ya yi da za a shigar da harshen rubutun PHP don samun damar haɓakawa da gudanar da hadaddun aikace-aikacen gidan yanar gizo, ba kawai yin amfani da lambar HTML/CSS ba.

Domin muna amfani da Nginx a matsayin sabar gidan yanar gizo muna buƙatar shigar da PHP-FPM tsarin tallafi don sadarwa ta hanyar Fast Common Gateway da kuma canza abun ciki mai ƙarfi da aka samar. ta hanyar rubutun PHP.

Ba da layin umarni mai zuwa don shigar da sabis na PHP-FPM, sannan fara daemon kuma tabbatar da matsayi.

$ sudo pacman –S php php-fpm
$ sudo systemctl start php-fpm
$ sudo systemctl status php-fpm

Don jera duk samuwa modul PHP yana ba da umarni masu zuwa.

$ sudo pacman –S php[TAB]
$ sudo pacman –Ss | grep php

12. Ɗaya daga cikin matakai na ƙarshe shine shigar da PhpMyAdmin Web Interface don MySQL database. Bayar da umarni mai zuwa don shigar da PhpMyAdmin tare da tsarin da ake buƙata na PHP sannan ƙirƙirar hanyar haɗi ta alama don hanyar tsarin PhpMyaAdmin zuwa hanyar tushen tushen Nginx.

$ pacman -S phpmyadmin php-mcrypt
$ sudo ln -s /usr/share/webapps/phpMyAdmin   /usr/share/nginx/html

13. Sa'an nan kuma saita php.ini fayil don haɗa abubuwan da suka dace da aikace-aikacen PhpMyAdmin.

$ sudo nano /etc/php/php.ini

Nemo tare da maɓallan [CTRL+W] da rashin amsawa (cire ; a farkon layin) layin masu zuwa.

extension=mysqli.so
extension=mysql.so
extension=mcrypt.so
mysqli.allow_local_infile = On

A kan fayil iri ɗaya nemo wuri kuma edit open_basedir umarni don kama da kundayen adireshi masu zuwa.

open_basedir= /srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/:/etc/webapps/

14. Mataki na gaba shine kunna PHP-FPM FastCGI akan umarnin Nginx localhost. Bayar da umarni na gaba don adana nginx.conf tsarin fayil ɗin sabar yanar gizo sannan musanya shi da abun ciki mai zuwa.

$ sudo mv /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
$ sudo nano /etc/nginx/nginx.conf

Ƙara duka abubuwan da ke biyo baya akan nginx.conf.

#user html;
worker_processes  2;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    #tcp_nopush     on;
    #keepalive_timeout  0;
    keepalive_timeout  65;
    gzip  on;

    server {
        listen       80;
        server_name  localhost;
            root   /usr/share/nginx/html;
        charset koi8-r;
        location / {
        index  index.php index.html index.htm;
                                autoindex on;
                                autoindex_exact_size off;
                                autoindex_localtime on;
        }

                                location /phpmyadmin {
        rewrite ^/* /phpMyAdmin last;
    }

 error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /usr/share/nginx/html;
        }

    location ~ \.php$ {
        #fastcgi_pass 127.0.0.1:9000; (depending on your php-fpm socket configuration)
        fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
        fastcgi_index index.php;
        include fastcgi.conf;
    }

        location ~ /\.ht {
            deny  all;
        }
    }         
}

15. Bayan an yi duk tsarin fayil ɗin, duk abin da kuke buƙatar yi shine sake kunna Nginx da PHP-FPM sabis sannan ku nuna mashin ɗinku zuwa http:// localhost/phpmyadmin URL daga kumburin gida ko http://arch_IP/phpmyadmin su samar da wata kwamfuta.

$ sudo systemctl restart php-fpm
$ sudo systemctl restart nginx

16. Idan komai ya gudana kamar yadda aka yi niyya mataki na ƙarshe shine kunna tsarin LEMP tare da umarni masu zuwa.

$ sudo systemctl enable php-fpm
$ sudo systemctl enable nginx
$ sudo systemctl enable mysqld

Barka da murna! Kun shigar kuma kun daidaita LEMP akan Arch Linux kuma, yanzu, kuna da cikakkiyar fa'ida don farawa da haɓaka aikace-aikacen yanar gizo.

Ko da yake Arch Linux ba shine mafi kyawun tsarin da ya dace don gudana akan sabar samarwa ba saboda ƙirar saƙon juyi na al'umma yana iya zama tushe mai sauri kuma abin dogaro ga ƙananan wuraren samarwa marasa mahimmanci.


Duk haƙƙoƙi. © Linux-Console.net • 2019-2024