Sådan installeres LEMP på Ubuntu 14.04

Vi ved alle, hvad LAMP er, ikke? Det betyder Linux, Apache, MySQL og PHP. Det var den traditionelle stack, hvor de fleste udviklere byggede deres apps i det sidste årti. På denne vejledning erstatter vi dog den traditionelle MySQL-server med en cool erstatning kaldet MariaDB, og Apache med alle de magtfulde Nginx. På denne vejledning baseret på Ubuntu 14.04 LTS lærer du, hvordan du udskifter den gamle LAMP med en ny LEMP-stak.

Hvorfor MariaDB og Nginx?

MariaDB er nu den nye DB standart. Det blev bygget af de oprindelige udviklere af MySQL og garanteret at være åben kilde. MariaDB er en MySQL binær udskiftning, det virker nøjagtigt det samme som MySQL, men giver bedre hastighed, ydeevne, nye udvidelser og kølige funktioner, der gør din database administration og brug langt bedre end med traditionelle MySQL-installationer. For en komplet liste over funktioner og en vs MySQL sammenligning bedes du tjekke ud MariaDBs officielle hjemmeside.

Nginx har på den anden side drevet millioner af websteder og erstatter gamle Apache-installationer med sin nye arkitektur for at forbedre hastighed, ydeevne og skalerbarhed. Med kommercielle og ikke-kommercielle versioner er Nginx nu en ny standard i dev-fællesskabet. Og det er derfor, vi skal bruge det på denne vejledning.

Installation af LEMP på Ubuntu 14.04

Krav

  • Ubuntu 14.04 op og kører
  • Root adgang

Installation af Nginx

Hvis du bruger Apache, skal du sørge for at stoppe det for at undgå portkonflikter:

service apache2 stop apt-get install nginx service nginx genstart opdatering-rc.d nginx standardindstillinger

Installation af MariaDB

apt-get install mariadb-server mariadb-client -y tjeneste mysql start opdatering-rc.d mysql defaults

Som standard angiver MariaDB ikke nogen adgangskode til rodbrugeren. Lad os sætte sikker MariaDB lidt mere ved at køre mysql_secure_installation scriptet, dette script vil sætte en ny adgangskode og også fjerne testdatabasen, der følger med den oprindelige MariaDB installation.

mysql_secure_installation

Det vil se sådan ud, tryk på "y" for alle spørgsmålene.

Indtast aktuel adgangskode for root (skriv til ingen): <- tryk enter Indstil root password? [Y / n] Ny adgangskode: Indtast ny adgangskode: Fjern anonyme brugere? [Y / n] Disallow root login eksternt? [Y / n] Genindlæs privilegietabeller nu? [Y / n]

Installation af PHP-FPM og andre PHP-udvidelser

Nu da MariaDB er installeret og sikret, kan vi starte med PHP-FPM. På den gamle LAMP-stack brugte PHP til at fungere som et Apache-modul, det hedder mod_php. På den nye LEMP-stak installerer vi PHP-FPM (FastCGI Process Manager) -demoen, der kører alene på en anden tjeneste end webserveren. Det er skalerbart, uafhængigt og langt hurtigere end mod_php. Lad os undersøge, hvordan du får det til at fungere rigtigt hurtigt, kør disse kommandoer:

apt-get installer php5-fpm service php5-fpm start opdatering-rc.d php5-fpm standardindstillinger

Installer nogle ekstra PHP-moduler

apt-get install php5-mysqlnd php5-curl php5-intl php-pear php5-intl php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-sqlite php5-ryddelige php5 -xmlrpc php5-xsl

Konfiguration af Nginx + PHP-FPM

For at få dine PHP-filer analyseret af Nginx, skal du oprette en grundlæggende Nginx-konfiguration.
Læs denne vejledning for at konfigurere din nginx.conf-fil korrekt: Nginx-konfigurationseksempel
Andre links, der kan være nyttige: Sådan oprettes Nginx virtuelle værter (Server blokke) & 8 Essential Nginx-kommandoer

Når du er færdig med at konfigurere nginx.conf, opretter vi en virtuel værtsfil:

Eksempel på en standard WordPress-installation:

nano -w /etc/nginx/conf.d/yourwebsite.com

Indsæt dette inde:

# dinwebsite.com server {access_log off; error_log logs / dinwebsite.com-error_log advare; lyt 80; server_name yourwebsite.com www.yourwebsite.com; root /path/to/your/yourwebsite.com; indeks index.php index.html index.htm; placering / {# WordPress Omskrivningsregler try_files $ uri $ uri / /index.php?$args; } # PHP-FPM parsing placering ~ .php $ {try_files $ uri = 404; fastcgi_pass unix: /var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $ document_root $ fastcgi_script_name; inkludere fastcgi_params; }}

Noter: Husk at erstatte "/path/to/your/yourwebsite.com" med dit rigtige dokument rodbane og yourwebsite.com med dit rigtige domænenavn.

Som du ser, inkluderede vi PHP-FPM-parsing-konfiguration ved hjælp af php5-fpm.sock, en sokkel defineret i PHP-FPM-konfiguration. Lad os konfigurere PHP-FPM-stikket, så vores Nginx kan servere PHP-filer uden problemer:

Som standard skal PHP-FPM lytte på socket /var/run/php5-fpm.sock, men lad os sørge for, at den er konfigureret på den måde.

Rediger denne fil:

nano -w /etc/php5/fpm/pool.d/www.conf

Find denne variabel:

lyt =

Og sørg for, at det ligner:

lyt = /var/run/php5-fpm.sock

Dette vil gøre PHP-FPM til at lytte på TCP-stikket.

Anvend disse tilladelser for at undgå gateway-fejl:

chmod go + rw /var/run/php5-fpm.sock

Genindlæs PHP-FPM for at anvende ændringer:

service php5-fpm genindlæsning

Test din LEMP stabel

Åbn din browser og surf din lokale IP:
http://127.0.0.1/ or http://www.yourwebsite.com

Du skal se standard Nginx-velkomstsiden.

Hvis du vil teste, at PHP-FPM virker, skal du bare oprette en phpinfo-fil som du ser nedenfor:

nano -w /path/to/your/yourwebsite.com/info.php

Indsæt dette inde, og derefter gem og luk filen:

<? php phpinfo (); ?> 

Start derefter det fra din browser:

http://127.0.0.1/info.php or http://www.yourwebsite.com/info.php, you should see something like this:

php-fpm

Og det er alt, vi har vores LEMP-stabel, der arbejder og klar til at betjene alle slags applikationer.

Konklusion

Installation af LEMP-stakken skal være en nem opgave for dig nu, husk at teknologierne skifter hver dag, og du bør aldrig holde fast i gamle ting, hvis du vil fortsætte med at forbedre dine apps med hensyn til udvikling, hastighed og skalerbarhed. Prøv vores LAMP-stak tutorial og lad os vide, hvis du står over for eventuelle problemer, hjælper vi gerne.

Giv en kommentar

Dette websted bruger Akismet til at reducere spam. Lær, hvordan dine kommentardata behandles.