Ako nainštalovať Wordpress s Nginx na Ubuntu 20.04 LTS

Nainštalujte WordPress s úplným zásobníkom LEMP na Ubuntu 20.04 LTS

WordPress je v súčasnosti bezpochyby najpopulárnejší softvér na správu obsahu na svete. Odhaduje sa, že pomocou WordPress bolo vytvorených viac ako 27 miliónov živých webových stránok na internete. Dokonca aj Allthings.how je vytvorený pomocou WordPress!

Ako možno viete, WordPress potrebuje nastavenie webového servera spolu so systémom správy databáz a samozrejme PHP engine na počítači, na ktorý sa má nainštalovať. Takýto balík softvéru bežne vyžaduje softvér na správu obsahu a často sa označuje skratkou LAMP (Linux, Apache, MySQL, PHP/Perl/Python) alebo WAMP (Windows, Apache, MySQL, PHP/Perl/Python). V tomto článku uvidíme, ako nainštalovať WordPress pomocou zásobníka LEMP (Linux, Nginx, MySQL, PHP) v systéme Ubuntu.

Inštalácia LEMP Stack a WordPress

Ak chcete nainštalovať zásobník, spustite:

sudo apt aktualizácia sudo apt install nginx mysql-server mysql-client php php-fpm php-mysql

Poznámka: Pre staršie verzie Ubuntu (verzia 14.04 a nižšia) musíte použiť apt-get namiesto apt.

Balík php-fpm je voliteľné, ale vysoko odporúčané. Nainštaluje PHP Fast CGI Process Manager, ktorý sa používa na optimalizáciu výkonu backendu. Používateľ si môže namiesto MySQL zvoliť aj populárnu open source náhradu MariaDB, ktorá potrebuje presne rovnakú konfiguráciu ako MySQL.

Ak chcete nainštalovať WordPress, musíme si ho jednoducho stiahnuť a rozbaliť. Rozbalíme ho v priečinku /var/www/html, čo je predvolený koreňový priečinok pre webové servery v systéme Linux.

cd /var/www/html sudo wget //wordpress.org/latest.zip sudo unzip recent.zip cd wordpress

Nakonfigurujte Nginx pre WordPress

Práve teraz, kvôli jednoduchosti, chceme nasmerovať doménu 127.0.0.1 (localhost) do našej inštalácie WordPress. Pre produkčné inštalácie musí používateľ použiť názov hostiteľa alebo IP adresu systému v konfigurácii Nginx.

Najprv, vytvorte nový súbor/etc/nginx/sites-available/localhost pomocou vim alebo ľubovoľného editora podľa vášho výberu:

sudo vim /etc/nginx/sites-available/localhost

Ďalej do súboru zadajte nasledujúcu konfiguráciu Nginx:

server { počúvať 80; počúvaj [::]:80; root /var/www/html/wordpress; index index.php; názov_servera 127.0.0.1; umiestnenie / { try_files $uri $uri/ =404; } umiestnenie ~ \.php$ { fastcgi_pass unix:/run/php/php7.3-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; zahŕňajú fastcgi_params; } }

Veci, ktoré musíte upraviť v konfiguračnom súbore vyššie:

  • názov servera: Zmeňte ho na názov svojej domény.
  • PHP verzia FPM: Čiara fastcgi_pass unix:/run/php/php7.0-fpm.sock by sa malo zmeniť na základe verzie PHP FPM (t. j. verzie PHP, pretože úložisko Ubuntu aktualizuje PHP a PHP FPM na rovnakú verziu). Ak to chcete urobiť, spustite sa php -v, aby ste videli verziu. Potom, napríklad, ak je verzia 7.4, zmeňte vyššie uvedený riadok na fastcgi_pass unix:/run/php/php7.4-fpm.sock

V podstate tu konfigurujeme Nginx tak, aby smeroval požiadavky 127.0.0.1 do nášho koreňového priečinka WordPress. Zadáme indexový súbor (indexový súbor WordPress je index.php) a niektoré parametre PHP FPM. Úplné vysvetlenie smerníc konfiguračného súboru Nginx nájdete v dokumentácii Nginx.

Stlačte tlačidlo uniknúť prejdite do príkazového režimu vim a potom zadajte :wq uložiť a ukončiť súbor.

Ďalej musíme vytvorte symbolický odkaz pre tento súbor v priečinku Nginx Sites Enabled:

sudo ln -s /etc/nginx/sites-available/localhost /etc/nginx/sites-enabled

Nakonfigurujte MySQL pre WordPress

Otvorte MySQL príkazový riadok pomocou:

mysql -u root -p

Predvolená hodnota koreň Používateľ je vytvorený pomocou MySQL počas inštalácie, s heslom rovnakým ako je heslo root systému a s oprávneniami správcu MySQL. Môžete použiť iného používateľa, ak ste už vytvorili iného používateľa MySQL, ale uistite sa, že používateľ má povolenia na vytvorenie databázy.

Do príkazového riadka MySQL zadajte nasledujúci príkaz SQL vytvoriť novú databázu pre našu inštaláciu WordPress:

mysql> CREATE DATABASE názov databázy;

☝ Zmena názov databázyv príkaze vyššie podľa vašich preferencií.

Potom vytvorte v databáze používateľské meno a heslo, ktoré použijeme súbor wp_config neskôr v príručke.

mysql> UDELTE VŠETKY PRIVILEGIÁ PRE názov databázy.* TOMU "wordpressusername"@"localhost" -> IDENTIFIKOVANÉ PODĽA "hesla"; 

☝ Zmena wordpressusername a heslopodľa vašich preferencií a názov databázy na to, čo ste nastavili v predchádzajúcom príkaze.

Nakoniec spustite spláchnuť príkaz a potom východ výzva MySQL.

mysql> FLUSH PRIVILEGES; 
mysql> EXIT

Teraz prejdite do koreňového priečinka WordPress. Musíme vytvoriť pripojenie MySQL v konfiguračnom súbore WordPress:

cd /var/www/html/wordpress

Vytvorte konfiguračný súbor WordPress skopírovaním vzorového konfiguračného súboru:

sudo cp wp-config-sample.php wp-config.php

Otvorte konfiguračný súbor vo vime alebo v ľubovoľnom editore podľa vášho výberu:

sudo vim wp-config.php

Zmeňte premenné PHP DB_NAME, DB_USER, DB_PASSWORD v súbore:

define( 'DB_NAME', 'databasename' ); /** Meno používateľa databázy MySQL */ define( 'DB_USER', 'wordpressusername' ); /** Heslo databázy MySQL */ define( 'DB_PASSWORD', 'password' );

Stlačte tlačidlo uniknúť prejdite do režimu príkazového riadka vim. Typ :wq a stlačte Zadajte uložiť a ukončiť súbor.

Konečné nastavenie

Upravte povolenia adresára v priečinku wordpress, aby ste k nemu povolili prístup z prehliadača.

sudo chmod -R 755 .

Povolenie 755 znamená všetky povolenia pre vlastníka adresára, povolenia na čítanie a vykonávanie pre skupinu používateľov vlastníka a povolenia na čítanie a vykonávanie pre ostatných používateľov. Podrobnosti o význame oprávnení nájdete v manuálovej stránke chmod (človek chmod).

nakoniec reštartujte Nginx aby sa nová konfigurácia uskutočnila:

reštart služby sudo nginx

Otvorte názov domény svojho webu (ako je nakonfigurovaný v názov servera v konfiguračnom súbore Nginx) vo webovom prehliadači a skontrolujte, či WordPress funguje. Malo by vás to presmerovať na úvodnú obrazovku nastavenia WordPress.

Zadajte podrobnosti a dokončite nastavenie WordPress.