Kuinka asentaa Nginx 1.15, MariaDB 10 ja PHP 7 CentOS 7: een
Tässä artikkelissa kerrotaan, kuinka LEMP-pino (Linux, Nginx, MariaDB, PHP) asennetaan yhdessä PHP-FPM: n kanssa RHEL/CentOS 7/6- ja Fedora 26-29 -palvelimille dnf-paketinhallintaa käyttäen.
Prosessin aikana asennamme ja otamme käyttöön Epel-, Remi-, Nginx- ja MariaDB-arkistot, jotta voimme asentaa näiden pakettien uusimmat versiot.
Vaihe 1: Asenna EPEL ja Remi Repository
EPEL (Extra Packages for Enterprise Linux) on yhteisöpohjainen arkisto, joka tarjoaa lisäohjelmistopaketteja RHEL-pohjaisiin Linux-jakeluihin.
Remi on arkisto, josta löydät uusimmat PHP-pinon versiot (täysin varustellun) asennettaviksi Fedora- ja Enterprise Linux -jakeluihin.
# yum update && yum install epel-release # rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm ------ For RHEL 7 Only ------ # subscription-manager repos --enable=rhel-7-server-optional-rpms
# yum update && yum install epel-release # rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm ------ For RHEL 6 Only ------ # subscription-manager repos --enable=rhel-6-server-optional-rpms
# rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-29.rpm [On Fedora 29] # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-28.rpm [On Fedora 28] # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-27.rpm [On Fedora 27] # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-26.rpm [On Fedora 26] # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-25.rpm [On Fedora 25] # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-24.rpm [On Fedora 24]
Vaihe 2: Nginx- ja MariaDB-arkistojen asentaminen
Nginx-arkistoa tarvitaan vain RHEL- ja CentOS-jakeluissa. Luo tiedosto nimeltä /etc/yum.repos.d/nginx.repo ja lisää siihen seuraavat rivit.
[nginx] name=nginx repo baseurl=http://nginx.org/packages/rhel/$releasever/$basearch/ gpgcheck=0 enabled=1
[nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=0 enabled=1
Ota MariaDB-arkisto käyttöön luomalla tiedosto nimeltä /etc/yum.repos.d/mariadb.repo, jonka sisältö on seuraava:
[mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.1/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1
Vaihe 4: Ngnixin ja MariaDB: n asentaminen
Nginx (Engine X) on avoimen lähdekoodin, kestävä, kevyt ja erittäin suorituskykyinen Web-palvelin, käänteinen välityspalvelimen katkaisu ja myös posti välityspalvelin HTTP-, SMTP-, POP3- ja IMAP-protokollille. Lisätietoja on osoitteessa http://wiki.nginx.org/Overview.
MariaDB on haarukka tunnetusta MySQL: stä, joka on yksi maailman suosituimmista relaatiotietokantojen hallintajärjestelmistä (RDBMS). Sen on kokonaan kehittänyt yhteisö, ja sellaisenaan sen on tarkoitus pysyä FOSS: na ja yhteensopivana GPL: n kanssa.
Asenna Ngnix ja MariaDB suorittamalla seuraavat komennot.
----------- Installing on RHEL/CentOS 7/6 ----------- # yum --enablerepo=remi install nginx MariaDB-client MariaDB-server php php-common php-fpm ----------- Installing on Fedora ----------- # dnf --enablerepo=remi install nginx MariaDB-client MariaDB-server php php-common php-fpm
Vaihe 3: PHP: n asentaminen Remi Repository -sovelluksella
PHP (Hypertext Preprocessor) on ilmainen ja avoimen lähdekoodin palvelinpuolen komentosarjakieli, joka soveltuu parhaiten verkkokehitykseen. Sitä voidaan käyttää dynaamisten verkkosivujen tuottamiseen verkkosivustolle ja se löytyy useimmiten * nix-palvelimista. Yksi PHP: n eduista on, että se on helposti laajennettavissa käyttämällä monenlaisia moduuleja.
PHP: n asentamiseksi sinun on ensin otettava käyttöön Remi-arkisto asentamalla yum-utils
, kokoelma hyödyllisiä ohjelmia yum-arkistojen ja pakettien hallintaan.
# yum install yum-utils
Asennuksen jälkeen voit käyttää yum-utils
-palvelun tarjoamaa yum-config-manageria, jotta Remi-arkisto on oletustietovarasto eri PHP-versioiden asentamiseen kuvan osoittamalla tavalla.
Voit esimerkiksi asentaa PHP 7.x -version seuraavalla komennolla.
------------- On CentOS & RHEL ------------- # yum-config-manager --enable remi-php70 && yum install php [Install PHP 7.0] # yum-config-manager --enable remi-php71 && yum install php [Install PHP 7.1] # yum-config-manager --enable remi-php72 && yum install php [Install PHP 7.2] # yum-config-manager --enable remi-php73 && yum install php [Install PHP 7.3] ------------- On Fedora ------------- # dnf --enablerepo=remi install php70 [Install PHP 7.0] # dnf --enablerepo=remi install php71 [Install PHP 7.1] # dnf --enablerepo=remi install php72 [Install PHP 7.2] # dnf --enablerepo=remi install php73 [Install PHP 7.3]
Seuraavaksi aiomme asentaa kaikki nämä seuraavat PHP-moduulit.
------ On RHEL/CentOS 7/6 ------ # yum --enablerepo=remi install php-mysqlnd php-pgsql php-fpm php-pecl-mongo php-pdo php-pecl-memcache php-pecl-memcached php-gd php-xml php-mbstring php-mcrypt php-pecl-apcu php-cli php-pear ------ On Fedora ------ # dnf --enablerepo=remi install php-mysqlnd php-pgsql php-fpm php-pecl-mongo php-pdo php-pecl-memcache php-pecl-memcached php-gd php-xml php-mbstring php-mcrypt php-pecl-apcu php-cli php-pear
Vaihe 6: Apache-palvelun pysäyttäminen ja poistaminen käytöstä
Oletuksena Apache ja Nginx kuuntelevat samassa portissa (TCP 80). Tästä syystä, jos Apache on asennettu palvelimellesi, sinun on pysäytettävä se ja poistettava käytöstä/peitettävä (vahvempi versio käytöstä, joka yhdistää palvelun/dev/null) voidaksesi käyttää Nginxiä, tai voit poistaa sen, jos et aio käyttää sitä enää.
# systemctl stop httpd # systemctl disable httpd or # systemctl mask httpd
Vaihe 7: Nginxin, MariaDB: n ja PHP-FPM: n käynnistäminen/lopettaminen
----------- Enable Nginx, MariaDB and PHP-FPM on Boot ----------- # systemctl enable nginx # systemctl enable mariadb # systemctl enable php-fpm ----------- Start Nginx, MariaDB and PHP-FPM ----------- # systemctl start nginx # systemctl start mariadb # systemctl start php-fpm
Vaihe 8: Nginxin ja PHP-FPM: n määrittäminen
Luo nyt hakemistorakenne verkkosivustollesi (virtuaalinen isäntä tai palvelinlohko, kuten sitä kutsutaan Nginxissä) kohtaan/srv/www /. Tässä esimerkissä käytämme linux-console.net
, mutta voit vapaasti valita toisen verkkotunnuksen ja päähakemiston, jos haluat.
# mkdir -p /srv/www/tecmint/public_html # mkdir /srv/www/tecmint/logs # chown -R nginx:nginx /srv/www/tecmint
Vaihe 9: Nginx-virtuaalisten isäntähakemistojen määrittäminen
Kuten tiedätte, kyky ajaa useita sivustoja samalta koneelta on yksi suurten verkkopalvelimien erottavista piirteistä. Luodaan nyt hakemistot palvelinlohkojemme (tunnetaan Apache-nimissä virtuaalisina isäntinä) tallentamiseksi tiedostoon/etc/nginx.
# mkdir /etc/nginx/sites-available # mkdir /etc/nginx/sites-enabled
Seuraava koodirivi, joka on lisättävä ennen http-lohkon sulkemista tiedostossa /etc/nginx/nginx.conf, varmistaa, että/etc/nginx/sites -yhteensopivan hakemiston kokoonpanotiedostot otetaan huomioon, kun Nginx on käynnissä :
## Load virtual host conf files. ## include /etc/nginx/sites-enabled/*;
Jos haluat luoda palvelinlohkon sivustolle linux-console.net
, lisää seuraavat koodirivit hakemistoon/etc/nginx/sites-available/tecmint (tämä tiedosto luodaan, kun syötät koko polun aloittaaksesi haluamasi tekstieditori). Tämä on virtuaalisen isännän perusasetustiedosto.
server { listen 80 default; server_name tecmint; access_log /srv/www/tecmint/logs/access.log; error_log /srv/www/tecmint/logs/error.log; root /srv/www/tecmint/public_html; location ~* \.php$ { fastcgi_index index.php; fastcgi_pass 127.0.0.1:9000; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; } }
Virtuaalisen isännän "aktivointi" koostuu symbolisen linkin luomisesta virtuaalisen isännän tecmint
määritelmästä/etc/nginx/sites-enabled.
# ln -s /etc/nginx/sites-available/tecmint /etc/nginx/sites-enabled/tecmint
Jotta voimme todella tehdä tekemämme muutokset, meidän on nyt käynnistettävä Nginx uudelleen. Joskus on hyödyllistä tarkistaa kokoonpanotiedostoista syntaksivirheiden varalta ennen kuin teet niin:
# nginx -t # systemctl restart nginx # systemctl status nginx
Jos haluat käyttää äskettäin luotua virtuaalipalvelinta, sinun on lisättävä seuraava rivi tiedostoon/etc/hosts verkkotunnuksen tarkkuuden perusmenetelmänä.
192.168.0.18 linux-console.net linux-console.net
Vaihe 10: Nginxin, MySQL: n, PHP: n ja PHP-FPM: n testaaminen
Pidetään kiinni perinteisestä tavasta testata PHP. Luo tiedosto test.php
kohtaan/srv/www/tecmint/public_html/ja lisää siihen seuraavat koodirivit.
phpinfo()
-toiminto näyttää paljon tietoa nykyisestä PHP-asennuksesta:
<?php phpinfo(); ?>
Osoita nyt verkkoselaimesi kohtaan http://tecmint/test.php
ja tarkista asennettujen moduulien ja lisäohjelmistojen läsnäolo:
Onnittelut! Sinulla on nyt toimiva LEMP-pinon asennus. Jos jokin ei mennyt odotetulla tavalla, ota rohkeasti yhteyttä alla olevan lomakkeen avulla. Kysymykset ja ehdotukset ovat myös tervetulleita.