סקוניל וטנ'גב (PhpMyAdmin -ו Linux, Nginx, MySQL/MariaDB, PHP/PHP-FPM) LEMP תנקתה


.תישיא המאתה לש ההובג המר שי ,ןכ ומכ ,דואמ רהמ תדבועו תלעופה םירתא יחתפמ לש האלמ המרופטלפ תיינבל םישורדה םימיוסמ םילכ - Portage - הלש הנכותה לוהינ תינכות תקפסמו תורוקמה תורוקממ תו

.תרשה תורוצת תא דואמ ומיאתי ,טנרטניא תמרופטלפל תושורדה תורדגה וא םילודומ - רודיה ךילהתב הליבח תוילנויצקנופ לש הצובק העיצמה ,Portage Management Management ידי לע םינתינה שומיש ילגד <

    Nginx טנרטניאה תרש תא ןקתה :1 בלש

    .תנכדועמ ךלש תכרעמהו Portage תורוקמש אדוו תיטטס IP תבותכ םע רדגוה ךלש NIC -ה יכ אדוו Nginx תנקתהב ךישמהל הסנתש ינפל .1

    $ sudo su -
    # emerge --sync
    # emerge --update --deep --with-bdeps=y @world

    .האבה הדוקפה תלעפה ידי לע Nginx לש לדחמ תרירב תנקתה ילודומ לש הנושאר המישר . make.conf לש דה ידי לע םיפדעומה םילודומהו תורדגהה תריחב ידי לע Ng

    # emerge -pv nginx

    . equery הדוקפב שמתשה (תוליבח USE flags for) םילודומ לע טרופמ עדימל

    # equery uses nginx

    .האבה הדוקפה םע Nginx תא ןקתה ןכמ רחאל

    # emerge --ask nginx

    .םישדח םילודומ םע Nginx תא שדחמ רודיה זאו ,היחנה NGINX_MODULES_HTTP םע make.conf

    # echo 'NGINX_MODULES_HTTP="dav auth_pam fancyindex geoip fastcgi uwsgi gzip rewrite"' >> /etc/portage/make.conf
    # emerge --ask nginx

    . http:// localhost לא ןפדפדה תיינפה ידי לע ותוא תמאו http ןומדה תא לחתה ,Nginx הווהתמה Portage םויס רחאל .3

    PHP ןקתה :2 בלש

    .Apache תמויס תא ריסמ התאש אדוו Portage USE ילגד לע תובחרה .בושח PHP ראשו fpm תפסוה ידי לע b> PHP-FastCGI Process Manager ( FPM )> תא ןקתה ,Nginx תרש םע PHP לש תימניד

    # emerge -pv php
    # equery uses php
    # echo " dev-lang/php fpm cgi curl gd imap mysql mysqli pdo zip json xcache apc zlib zip truetype -apache2 " >> /etc/portage/package.use
    # emerge --ask php

    .םיאבה םייונישה תא עצבו php-fpm הרוצתה ץבוק תא חתפ .תורישה תרוצת ץבוקב םייוניש ליחהל שי PHP-FPM תליחת ינפל .5

    # nano /etc/php/fpm-php5.5/php-fpm.conf

    .ךכ תואריהל ידכ תואבה תוארוהה תא רספהו אצמ

    error_log = /var/log/php-fpm.log
    listen = 127.0.0.1:9000    ## Here you can use any HTTP socket (IP-PORT combination ) you want  ##
    pm.start_servers = 20

    .תורישב לחתהו PHP-FPM ןמוי ץבוק תואשרה הנש ,PHP-FPM לש הרוצתה ץבוק תכירע רחאל .6

    # chmod 755 /var/log/php-fpm.log
    # /etc/init.d/php-fpm start

    .Nginx לש הרוצתה יצבקב םימיוסמ םייוניש עצבל שי ןכל ,PHP -ה רעש םע רשקתל הלוכי אל PHP-FPM, Nginx תוריש לעפומ םא םג

    Nginx תורוצת ךורע :3 בלש

    .תואבה תורוצתה תא עצבו /etc/nginx/ ביתנב םקוממה nginx.conf ץבוקה תא חתפ ,םיילאוטריו םיחראמ רשפאלו וז תוגהנתה תונשל ידכ .דבלב localhost רובע יסיסב HTTP עקש קר קפסמ Ngi

    # nano /etc/nginx/nginx.conf

    .הטמל ךסמה םוליצב ומכ תואריהל ויתורהצה לכ תא חבשהו IP -ה תבותכ 127.0.0.1 ב בישקמו localhost -ל םיאתמה ןושארה תרש ה קולב תא רתא

    .\"} \" םילתלותמ םיירגוס תריגס ינפל האבה הרהצהה תא ףסוהו תיתחתה תיתחתל רבעו ןיידע ץבוקה תא רוגסת לא

    Include /etc/nginx/sites-enabled/*.conf;

    .HTTPS -ו HTTP ילוקוטורפב localhost רובע הרוצת יצבקו Nginx תוירפס (שומישב םניאש םיילאוטריו םיחראמ רובע) םינימז םירתא ו ךמות ירתא רוצ ןכמ רחאל .8

    # mkdir /etc/nginx/sites-available
    # mkdir /etc/nginx/sites-enabled

    .localhost רובע האבה ץבוקה תרוצת תא רוצ

    # nano /etc/nginx/sites-available/localhost.conf

    .אבה ץבוקה ןכות תא ףסוה

    server {
                   listen 80;
                   server_name localhost;
    
                   access_log /var/log/nginx/localhost_access_log main;
                   error_log /var/log/nginx/localhost_error_log info;
    
                   root /var/www/localhost/htdocs;
    
                    location / {
                    index index.html index.htm index.php;
                    autoindex on;
                    autoindex_exact_size off;
                    autoindex_localtime on;
    
                                    }
    
                             location ~ \.php$ {
                           # Test for non-existent scripts or throw a 404 error
                           # Without this line, nginx will blindly send any request ending in .php to php-fpm
                           try_files $uri =404;
                            include /etc/nginx/fastcgi.conf;
                           fastcgi_pass 127.0.0.1:9000;  ## Make sure the socket corresponds with PHP-FPM conf file
                            }
                    }

    .אבה הרוצתה ץבוק תא רוצ SSL םע localhost רובע

    # nano /etc/nginx/sites-available/localhost-ssl.conf

    .אבה ץבוקה ןכות תא ףסוה

    server {
                   listen 443 ssl;
                   server_name localhost;
    
                ssl on;
                   ssl_certificate /etc/ssl/nginx/nginx.pem;
                   ssl_certificate_key /etc/ssl/nginx/nginx.key;
    
                   access_log /var/log/nginx/localhost.ssl_access_log main;
                   error_log /var/log/nginx/localhost.ssl_error_log info;
    
                   root /var/www/localhost/htdocs;
    
                                    location / {
                    index index.html index.htm index.php;
                    autoindex on;
                    autoindex_exact_size off;
                    autoindex_localtime on;
                                     }                                                
    
                          location ~ \.php$ {
                           # Test for non-existent scripts or throw a 404 error
                           # Without this line, nginx will blindly send any request ending in .php to php-fpm
                           try_files $uri =404;
                           include /etc/nginx/fastcgi.conf;
                           fastcgi_pass 127.0.0.1:9000;
                                    }
                    }

    .Nginx לש םיילאוטריו םיחראמ לש התבשה וא הלעפהל תודוקפכ שמשמה ,(PATH $תפטעמ הנתשמ) תכרעמה לש הלעפהה ביתנב םיטפירקס ינש רוציל ןמזה עיגה וישכע .9

    .< b /> םירתאב םיכמות ל םינימז םירתא -מ וניוצש םיחראמ ןיב ילמס רושיק תריצי ידי לע םיילאוטריו םיחראמ לש הרוצת יצבק רשפאיש n2ensite םשב ןושארה Bash -ה טפירקס תא רוצ

    # nano /usr/local/bin/n2eniste

    .אבה ץבוקה ןכות תא ףסוה

    #!/bin/bash
    if test -d /etc/nginx/sites-available && test -d /etc/nginx/sites-enabled  ; then
    echo "-----------------------------------------------"
    else
    mkdir /etc/nginx/sites-available
    mkdir /etc/nginx/sites-enabled
    fi
    
    avail=/etc/nginx/sites-available/$1.conf
    enabled=/etc/nginx/sites-enabled/
    site=`ls /etc/nginx/sites-available/`
    
    if [ "$#" != "1" ]; then
                    echo "Use script: n2ensite virtual_site"
                    echo -e "\nAvailable virtual hosts:\n$site"
                    exit 0
    else
    
    if test -e $avail; then
    sudo ln -s $avail $enabled
    else
    echo -e "$avail virtual host does not exist! Please create one!\n$site"
    exit 0
    fi
    
    if test -e $enabled/$1.conf; then
    echo "Success!! Now restart nginx server: sudo /etc/init.d/ nginx restart"
    else
    echo  -e "Virtual host $avail does not exist!\nPlease see available virtual hosts:\n$site"
    exit 0
    fi
    fi

    .אבה ןכותה םע לעפומה Nginx ביתנ מ וניוצש םיליעפ םיילאוטריו םיחראמ קחמיש , n2dissite ארקנש ינשה טפירקסה תא רוצ זא .10

    # nano /usr/local/bin/n2dissite

    .אבה ןכותה תא ףסוה

    #!/bin/bash
    avail=/etc/nginx/sites-enabled/$1.conf
    enabled=/etc/nginx/sites-enabled
    site=`ls /etc/nginx/sites-available/`
    
    if [ "$#" != "1" ]; then
                    echo "Use script: n2dissite virtual_site"
                    echo -e "\nAvailable virtual hosts: \n$site"
                    exit 0
    else
    
    if test -e $avail; then
    sudo rm  $avail
    else
    echo -e "$avail virtual host does not exist! Exiting!"
    exit 0
    fi
    
    if test -e $enabled/$1.conf; then
    echo "Error!! Could not remove $avail virtual host!"
    else
    echo  -e "Success! $avail has been removed!\nPlease restart Nginx: sudo /etc/init.d/nginx restart"
    exit 0
    fi
    fi

    .םייוניש ליחהל ידכ PHP-FPM -ו Nginx יתוריש תא שדחמ לעפה זאו , .conf תמויס אלל Virtual Host לש הרוצתה ץבוק םשב שמתשה - localhost לש לאוטריווה יחראמ תא לעפהו עוציב תואשרה ףסוה ,Bash

    # chmod +x /usr/local/bin/n2dissite
    # chmod +x /usr/local/bin/n2ensite
    # n2ensite localhost
    # n2ensite localhost-ssl
    # service nginx restart
    # service php-fpm restart

    . http://localhost/info.php וא https:/localhost/info .php ל ךלש ןפדפדה תא שדחמ הנפהו (/var/www/localhost/htdocs ) טנרטניא יצבק רובע localhost לש לדחמה

    echo "<?php phpinfo(); ?>" /var/www/localhost/htdocs/info.php

    .תכרעמה יחראמ ץבוקב םיימוקמ םיכרעב שמתשה וא טנרטניא תרש םע דדומתמ- טנרטניאל םיפקת DNS יעיבצמ ךל שיש אדו ךא ,הצרתש לככ םיבר טנרטניא ירתא תעכ תולקב ףיסוהל לכות n2dismod

    MySQL/MariaDB + PhpMyAdmin תא ןקתה :4 בלש

    .Gentoo -ב LAMP תנקתהב גצומה ךילה התואב שמתשה MySQL רובע PhpMyAdmin טנרטניאה קשממ תאו MySQL לש םינותנה דסמ תא ןיקתהל ידכ

    .ותוא ןיקתהלו לבקל ידכ תואבה תודוקפב שמתשה ,MySQL -ל הפיט תפלחה ,MariaDB -ב שמתשהל ךנוצרב םא ,הרומתב .13

    # emerge -pv mariadb
    # emerge --ask mariadb

    . package.accept.keywords

    # echo “=dev-db/mariadb-5.5.37-r1 ~amd64” >> /etc/portage/package.accept.keywords
    # echo “=virtual/mysql-5.5 ~amd64” >> /etc/portage/package.accept.keywords
    # emerge --ask mariadb

    .(הקידבל םינותנ דסמ/ימינונא שמתשמ רסה ,localhost -ל ץוחמ שרושל הסינכ תבשה ,שרוש תמסיס הנש) mysql_secure_installation תועצמאב החטבאה תוריש תא לחתה ,MySQL לש םינותנה דסמ תנקתה רחא

    # service mysql start
    # mysql_secure_installation

    . האיצי הדוקפה םע ותוא ריאשהלו ולש תוילנויצקנופה תא קודבל ידכ mysql -u root -p הדוקפה תועצמאב MySQL לש םינותנה דסמל סנכיה .15

    # mysql -u root -p
    
    MariaDB > show databases;
    MariaDB > exit;

    .תואבה תודוקפה עוציב ידי לע PhpMyAdmin לש ימדקה הצקה תא ןקתה .MySQL לש הדוקפה תרוש םע ידמ בוט ךניא םא .16

    # emerge -pv dev-db/phpmyadmin
    # echo “dev-db/phpmyadmin setup vhosts” >> /etc/portage/package.use
    # emerge  --ask dev-db/phpmyadmin

    .PhpMyAdmin טנרטניאה קשממל תשגל ךנוצרבש םיילאוטריו םיחראמ לש ךמסמה שרוש ביתנל usr/share/webapps/phpmyadmin/phpmyadmin_version_number/htdocs/ -מ ילמס רושיק רוצ זאו ,תיאר

    # cd /usr/share/webapps/phpmyadmin/4.2.2/htdocs/
    # cp config.sample.inc.php  config.inc.php
    # nano config.inc.php
    # ln -s /usr/share/webapps/phpmyadmin/4.2.2/htdocs/  /var/www/localhost/htdocs/phpmyadmin

    . https:/localhost/phpmyadmin האבה URL -ה תבותכב שמתשהו ןפדפד חתפ ,PhpMyAdmin טנרטניאה קשממ ךרד MySQL לש םינותנה דסמל תשגל ידכ .18

    .שדחמ לוחתא רחאל תיטמוטוא ליחתהל ,תכרעמה יבחרב םיתוריש רשפאל אוה ןורחאה בלשה .19

    # rc-update add nginx default
    # rc-update add php-fpm default
    # rc-update add mysql default

    .ךרובע תקפסמ תויהל הכירצ ליעל הרוצתה ,SSL ירתאל קוקז ךניאו PHP -ו HTML, JavaScript -ב ורצונש םידומעב קר שמתשמ התא םאו ,םירתא חוריאל תילמינימ הביבס תרדגה ונל שי תעכ


כל הזכויות שמורות. © Linux-Console.net • 2019-2024