Installer LEMP Server (Nginx, MariaDB, PHP) På CentOS, RHEL, Scientific Linux 6.5 /6.4 /6.3

LEMP er en kombinasjon av operativsystem og open-source software stack. Forkortelsen LEMP er avledet fra første bokstavene i Linux, Nginx HTTP Server, MariaDB database og PHP /Perl /Python.
I denne opplæringen, la oss se hvordan du setter opp LEMP server på RHEL /CentOS /Scientific Linux 6.x . Her x står for versjon som 6.1, 6.2, 6.3, 6.4, 6.5 osv
Min testbox vertsnavn og IP-adresse er server.unixmen.com og 192.168.1.200/24 ​​hhv.
Installer Nginx
Nginx (uttales motor-x) er et gratis, open-source, høy ytelse HTTP-server og reverse proxy, samt en IMAP /POP3 proxy server skrevet av Igor Sysoev. Ifølge Netcraft webserver undersøkelse 14,08% nettsider er tjent med Nginx.

Nginx vil ikke bli funnet i den offisielle CentOS depotet, så kan installere Epel og REMI depotet først. . For å installere Epel depotet se følgende link Anmeldelser - Installer Epel Repository På RHEL /CentOS /Scientific Linux 6

Nå installerer Nginx med følgende kommando:

 # yum install nginx -y < p> Start-Nginx og gjøre den skal starte automatisk ved hver omstart: 
 # tjenesteleverandører nginx starte # chkconfig nginx på 

Stopp Apache eller andre webservere hvis du har noen:

 # Tjenesten httpd Stopp # chkconfig httpd off 

Åpne Nginx port 80 gjennom brannmuren /router hvis du ønsker å få tilgang til web server fra andre systemer:

 # vi /etc /sysconfig /iptables 

Legg følgende linjer

 [...] - En INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT [...] 

Start iptables.

 # tjenesteleverandører iptables start 

Nå peke nettleseren din med "http://192.168.1.200". Testsiden av nginx vil åpne.

Nginx web server er installert nå.

Konfigurer Nginx

Åpne filen /etc/nginx/nginx.conf og sett worker_processes (dvs. Antall CPU-er i systemet). For å se noen. av CPU, bruk kommandoen "lscpu".

 # vi /etc/nginx/nginx.conf 

I mitt tilfelle er det "1". Så jeg satt dette som '1':

 worker_processes 1; 

Lagre og lukk filen. Åpne og redigere "/etc/nginx/conf.d/default.conf" som vist nedenfor:

 # vi /etc/nginx/conf.d/default.conf
## Standard serveren #server {lytte 80; server_navn server.unixmen.com; #charset koi8-r; #access_log logger /host.access.log viktigste; plassering /{root /usr /share /nginx /html; index index.html index.htm; } Error_page 404 /404.html; Plasseringen = /404.html {root /usr /share /nginx /html; } # Redirect server error sider til statisk side /50x.html # error_page 500 502 503 504 /50x.html; Plasseringen = /50x.html {root /usr /share /nginx /html; } # Proxy PHP-skript til Apache lytter på 127.0.0.1:80 # #location ~ \\ php $ {# proxy_pass http://127.0.0.1; #} # Passere PHP-skript til FastCGI serveren lytter på 127.0.0.1:9000 ## Uncomment eller Legg til følgende linjer beliggenhet ~ \\ php $ {root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $ DOCUMENT_ROOT $ fastcgi_script_name; inkluderer fastcgi_params; } # Nekte tilgang til .htaccess filer, hvis Apache dokument root # slutter seg Nginx er ett # #location ~ /\\.ht {# benekte det hele tatt; #}} 

Lagre og lukk filen. Restart Nginx tjeneste:

 # tjenesten nginx restart 

Installer MariaDB

MariaDB er en dråpe i erstatning for MySQL. Det er en robust, skalerbar og pålitelig SQL server som kommer rikt sett av forbedringer

Først må du fjerne eksisterende MySQL pakker hvis noen.

 # yum fjerne mysql * mysql-server mysql- utvik mysql-libs 

Installer REMI Repository å løse MySQL kompatibilitet problemet

Du vil sannsynligvis få avhengig feil når du installerer MariaDB. Så la oss legge REMI Repository å løse avhengig problemer:

Takk til AskMonty Kunnskaps å hjelpe meg å løse avhengig problemer. Slik installerer REMI depotet på CentOS /RHEL /Scientific Linux 6, se følgende link Anmeldelser - Installer REMI Repository På RHEL /CentOS /Scientific Linux 6

Installer compat-mysql55 pakken nå.
< pre> # yum --enablerepo = remi-test --disablerepo = remi installere compat-mysql55

Opprett et oppbevarings fil for MariaDB og legge til følgende linjer:

For 32bit systemer:

 # vi /etc/yum.repos.d/mariadb.repo
# MariaDB 5.5 CentOS repository liste - skapt 2013-06-06 07:42 UTC # http://mariadb.org/mariadb/repositories/[mariadb ] name = MariaDBbaseurl = http://yum.mariadb.org/5.5/centos6-x86gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDBgpgcheck=1

For 64bit systemer:

 # vi /etc/yum.repos.d/mariadb.repo
# MariaDB 5.5 CentOS repository liste - skapt 2013-06-06 07:53 UTC # http: //mariadb. org /mariadb /repositories /[mariadb] name = MariaDBbaseurl = http://yum.mariadb.org/5.5/centos6-amd64gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDBgpgcheck=1

Save og gå ut av filen og kjøre yum oppdatering kommando:

 # yum oppdatering 

Nå begynner å installere MariaDB:

 # yum install MariaDB-devel MariaDB-klient MariaDB-server -y 

Begynn MariaDB service og la den skal starte automatisk ved hver omstart:

 # tjenesten mysql start # chkconfig mysql på 

Angi MySQL root passord

Som standard MySQL root-passordet er tomt. Så for å hindre uautorisert tilgang til MySQL, la oss sette rotbrukerpassordet:

 # /usr /bin /mysql_secure_installation 
 /usr /bin /mysql_secure_installation: linje 379: find_mysql_client: kommando ikke foundNOTE: KJØRER ALLE DELER AV DENNE SCRIPT anbefales for alle MariaDB SERVERE I PRODUKSJON BRUK! Les hvert STEP NØYE! For å logge inn MariaDB å sikre det, trenger vi den Current for root brukeren. Hvis du nettopp har installert MariaDB, andyou har ikke satt root-passordet enda, vil passordet være blankt, så du bør bare på enter here.Enter gjeldende passord for root (skriv for ingen): OK, hell brukes passord, flytting på ... Stille rotpassordet sikrer at ingen kan logge inn på MariaDBroot brukeren uten riktig authorisation.You allerede har en root passord sett, så du kan trygt svare "n'.Change root-passordet? [Y /n] yNew passord: Tast inn nytt passord: Passord oppdatert hell Oppgradere privilegium tabellene .. ... Suksess som standard en MariaDB installasjon har en anonym bruker, slik at anyoneto logge inn MariaDB uten å måtte ha en bruker! konto opprettet forthem. Dette er kun ment for testing, og for å gjøre installationgo litt jevnere. Du bør fjerne dem før du flytter inn aproduction environment.Remove anonyme brukere? Normalt [Y /n] ... Suksess!, Root bør bare få lov til å koble fra 'localhost'. Thisensures at noen ikke kan gjette på root-passordet fra network.Disallow root innlogging eksternt? [Y /n] ... Suksess! Som standard leveres MariaDB med en database som heter "test" som alle canaccess. Dette er også kun ment for testing, og bør være removedbefore flytte inn i en produksjons environment.Remove testdatabase og tilgang til det? [Y /n] - Slippe test database ... ERROR 1008 (HY000) på linje 1: Kan ikke slippe database 'test'; database eksisterer ikke ... Kunne! Ikke kritisk, bevege ... - Fjerne privilegier på testdatabase ... ... Suksess Oppgradere privilegium tabellene vil sikre at alle endringer som er gjort så farwill virkning immediately.Reload privilegium tabellene nå!? [Y /n] ... Suksess! Rydder opp ... Alt gjort! Hvis du har fullført alle trinnene ovenfor, bør MariaDBinstallation nå være secure.Thanks for bruk MariaDB 

Installer PHP

PHP (rekursiv forkortelse for PHP: Hypertext Preprocessor
)! er en mye brukt open-source generell skriptspråk som er spesielt egnet for webutvikling og kan integreres i HTML

Installer PHP med følgende kommando:.

 # yum install php php-common php-fpm php-mysql -y 

Start php-fpm service og la den skal starte automatisk ved hver omstart:

 # tjenesten php-fpm start # chkconfig php-fpm på 

Konfigurer PHP

Åpne opp /etc/php.ini fil med et redigeringsprogram. Finn linjen cgi.fix_pathinfo og endre verdien fra 1 til 0 (null):

 # vi /etc/php.ini
 [...]; http://www.php.net/manual/en/ini.core.php#ini.cgi.fix-pathinfocgi.fix_pathinfo=0[...]

Open opp filen /etc /php-fpm. d /www.conf og endre bruker- og gruppe verdier fra apache til Nginx:

 # vi /etc/php-fpm.d/www.conf 
 [...]; Unix bruker /gruppe prosesser; Merk: Brukeren er obligatorisk. Dersom gruppen ikke er angitt, bruker standard gruppe; skal brukes .; RPM: apache valgte å være i stand til å få tilgang til noen dir som httpduser = nginx; RPM: Hold en gruppe lov til å skrive i loggen dir.group = nginx [...] 

Lagre og lukk filen. Restart php-fpm tjeneste:

 # tjenesten php-fpm restart 

Test PHP

Lag en sample "testphp.php" -filen i Apache dokumentet rotmappen og legge linjene som vist nedenfor :

 # vi /usr/share/nginx/html/testphp.php 
 < phpphpinfo (); > 

Lagre og lukk filen?. Restart Nginx tjeneste:

 # tjenesten nginx restart 

Gå til http: //server-ip-address/testphp.php. Det vil vise alle detaljer om PHP som versjon, bygge dato og kommandoer osv

Hvis du vil installere alle PHP moduler, skriver du inn kommandoen yum install php * -y og start Nginx service. Hvis du vil kontrollere for modulene, åpne opp din nettleser og gå til http: //server-ip-address/testphp.php. Du vil kunne se alle PHP moduler.

Det var det. Din LEMP serveren er klar til bruk. Anmeldelser