GNU/Linux >> Znalost Linux >  >> Ubuntu

Ubuntu 20.04:WordPress s instalací Nginx

WordPress je velmi oblíbený redakční systém (CMS) pro webové stránky. Jeho popularitu a všudypřítomnost opravdu nelze přeceňovat, protože pohání ohromujících 35 % webových stránek. Je to snadný způsob, jak dostat web online, a nabízí mnoho možností přizpůsobení.

Ubuntu 20.04 Focal Fossa a Nginx jsou perfektní kombinací pro provoz vašeho webu WordPress. Pomocí těchto nástrojů získáte velmi výkonné, efektivní a stabilní webové stránky. Nejlepší ze všeho je, že veškerý tento software je zcela zdarma a nastavení není příliš obtížné. Postupujte podle níže uvedených kroků a zjistěte, jak zprovoznit váš web WordPress na Ubuntu 20.04 s Nginx.

Pokud více znáte nebo preferujete Apache před Nginx, napsali jsme samostatnou příručku pro instalaci Ubuntu 20.04 WordPress na Apache.

V tomto tutoriálu se naučíte:

  • Jak nainstalovat a nakonfigurovat Nginx
  • Jak nainstalovat a nakonfigurovat MariaDB pro MySQL
  • Jak nastavit databázi MySQL pro WordPress
  • Jak stáhnout a nainstalovat WordPress
  • Jak nakonfigurovat SSL pro váš web WordPress

Provozování webu WordPress na Ubuntu 20.04 s Nginx
Softwarové požadavky a konvence příkazového řádku Linux
Kategorie Požadavky, konvence nebo použitá verze softwaru
Systém Nainstalováno Ubuntu 20.04 nebo upgradované Ubuntu 20.04 Focal Fossa
Software WordPress, Nginx, PHP, MariaDB (MySQL)
Jiné Privilegovaný přístup k vašemu systému Linux jako root nebo prostřednictvím sudo příkaz.
Konvence # – vyžaduje, aby dané linuxové příkazy byly spouštěny s právy root buď přímo jako uživatel root, nebo pomocí sudo příkaz
$ – vyžaduje, aby dané linuxové příkazy byly spouštěny jako běžný neprivilegovaný uživatel

Nainstalujte Nginx, PHP a MySQL

Před instalací WordPressu bude náš systém Ubuntu 20.04 potřebovat ke spuštění tři hlavní komponenty:Nginx, PHP a MySQL. Nginx je pro náš webový server, PHP má zobrazovat dynamický obsah a MariaDB (open source fork MySQL) je pro naši databázi. Tyto balíčky můžete nainstalovat otevřením terminálu a zadáním následujících dvou příkazů:

$ sudo apt update
$ sudo apt install nginx mariadb-server mariadb-client php-fpm php-mysql

Nakonfigurujte MySQL

MySQL vyžaduje trochu nastavení, než začneme vytvářet databázi. Nejprve si projdeme počáteční nastavení zabezpečení. Do terminálu zadejte následující příkaz:

$ sudo mysql_secure_installation

Budete požádáni o nastavení root hesla pro MySQL a poté o několik bezpečnostních otázek. Můžete odpovědět y (ano) na všechny otázky a nastavení se dokončí.

Procházím nastavením zabezpečení MySQL

Podrobněji se konfigurací MySQL zabýváme v našem článku o instalaci MySQL na Ubuntu 20.04, ačkoli výše uvedená konfigurace je opravdu vše, co musíte udělat.

Vytvořte databázi pro WordPress

Váš web WordPress bude potřebovat jednu databázi k uložení všech uživatelských informací, obsahu příspěvků atd. Připravte svou databázi a uživatele MySQL podle následujících kroků:

  1. Spusťte MySQL jako uživatel root:
    $ sudo mysql
    
  2. Vytvořte novou databázi pro WordPress:
    MariaDB [(none)]> CREATE DATABASE wordpress_db;
    
  3. Dále vytvořte nového uživatele databáze pro WordPress. my_password text níže by měl být nahrazen požadovaným (zabezpečeným) heslem:
    MariaDB [(none)]> CREATE USER 'wordpress_user'@'localhost' IDENTIFIED BY 'my_password';
    
  4. Nyní musíme našemu uživateli WordPressu udělit plná oprávnění k databázi WordPress:
    MariaDB [(none)]> GRANT ALL PRIVILEGES ON wordpress_db.* to wordpress_user@'localhost';
    
  5. Nakonec uložte změny, které jsme provedli v uživatelských oprávněních, a opusťte databázi:
    MariaDB [(none)]> FLUSH PRIVILEGES;
    MariaDB [(none)]> exit
    

    Vytvoření nové databáze a uživatele pro WordPress v MySQL

Nakonfigurujte Nginx

Než si budeme moci stáhnout WordPress, musíme správně nakonfigurovat Nginx, aby hostoval náš web. V rámci celé konfigurace Nginx budeme náš web nazývat „wordpress“, ale pokud chcete, můžete si vybrat jiný název.

Nejprve vytvořte konfigurační soubor pod /etc/nginx/sites-available adresář pomocí nano nebo vašeho oblíbeného textového editoru:

$ sudo nano /etc/nginx/sites-available/wordpress

Následující obsah můžete vložit do svého nově vytvořeného souboru, což je docela standardní konfigurace Nginx.

server {
        listen 80;
        listen [::]:80;

        root /var/www/wordpress;

        index index.php;

        server_name 127.0.0.1;

        location / {
                try_files $uri $uri/ =404;
        }

        location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
        }
}

Je zde několik řádků, které možná budete muset změnit. Řádek 9 by měl obsahovat název vaší domény namísto 127.0.0.1 , pokud nemáte název domény. Řádek 17 by měl být aktualizován číslem verze vašeho nainstalovaného PHP. Chcete-li zkontrolovat verzi PHP, spusťte php --version příkaz v terminálu.

Konfigurační soubor Nginx pro náš web WordPress

Jakmile provedete úpravy konfigurace, můžete změny uložit do tohoto souboru a zavřít jej. Posledními kroky v nastavení Nginxu jsou smazání výchozího webu, povolení vašeho webu a restartování Nginx, aby se změny projevily:

$ sudo rm /etc/nginx/sites-enabled/default
$ sudo ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/wordpress
$ sudo systemctl restart nginx

Stáhněte si a nainstalujte WordPress

Nyní, když jsou splněny všechny předpoklady, můžeme konečně přejít k instalaci samotného WordPressu.

  1. Nejprve si stáhněte nejnovější verzi WordPress pomocí wget :
    $ wget -O /tmp/wordpress.tar.gz https://wordpress.org/latest.tar.gz
    
  2. Rozbalte stažený archiv WordPress do adresáře webu:
    $ sudo tar -xzvf /tmp/wordpress.tar.gz -C /var/www
    
  3. Změňte vlastnictví adresáře webu:
    $ sudo chown -R www-data.www-data /var/www/wordpress
    
  4. Otevřete svůj internetový prohlížeč a přejděte na 127.0.0.1 nebo váš plně kvalifikovaný název domény. Uvítá vás průvodce nastavením WordPressu. Kliknutím na tlačítko „Pojďme“ začněte s konfigurací.

    Stránka nastavení WordPress
  5. Další obrazovka nás požádá o informace o konfiguraci naší databáze. Zadejte hodnoty, které jste nastavili dříve, a poté klikněte na „Odeslat“. Poslední dvě pole (hostitel databáze a předpona tabulky) lze ponechat na výchozích hodnotách.

    Zadejte informace o databázi MySQL pro WordPress
  6. WordPress by měl potvrdit, že je schopen komunikovat s databází MySQL. Kliknutím na „Spustit instalaci“ zahájíte instalaci WordPress.

    WordPress potvrzuje, že se dokáže připojit k databázi MySQL
  7. Nyní budete požádáni o vyplnění některých obecných informací o vašem novém webu:jeho název, uživatelské jméno správce, heslo atd. Vyplňte tyto údaje a poté klikněte na „instalovat WordPress“ v dolní části.

    Zadejte informace o svém novém webu WordPress
  8. Instalace by měla být dokončena a vy se můžete přihlásit na svůj nový web a začít vytvářet obsah!

    Instalace WordPressu byla úspěšně dokončena

Do panelu administrátora WordPress se můžete kdykoli dostat tak, že přejdete na http://127.0.0.1/wp-admin (nebo nahrazením 127.0.0.1 s vaším plně kvalifikovaným názvem domény).

WordPress administrační panel

Změny, které provedete v panelu administrátora, se projeví na webu:

Náš nový web WordPress je funkční

Volitelná konfigurace SSL

Než skončíme, ukážeme vám také, jak povolit SSL na vašem novém webu WordPress. Toto je čistě volitelné, protože váš web bude fungovat perfektně i bez něj, ale nabízí další zabezpečení a dává uživatelům hřejivý, neostrý pocit, když vidí visací zámek vedle názvu vaší domény v řádku URL svého prohlížeče.

  1. Začněte vygenerováním nového certifikátu s vlastním podpisem pomocí následujícího příkazu a zodpovězením několika otázek, na které budete vyzváni. Jako „běžný název“ zadejte IP adresu svého webu nebo plně kvalifikovaný název domény:
    $ sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/nginx-selfsigned.key -out /etc/ssl/certs/nginx-selfsigned.crt
    

    Vyplnění informací o certifikátu SSL
  2. Dále vytvořte nový konfigurační soubor SSL v následujícím umístění:
    $ sudo nano /etc/nginx/snippets/self-signed.conf
    
  3. Do tohoto souboru zadejte před uložením změn a ukončením souboru následující dva řádky:
    ssl_certificate /etc/ssl/certs/nginx-selfsigned.crt;
    ssl_certificate_key /etc/ssl/private/nginx-selfsigned.key;
    

    Konfigurace fragmentu SSL self-signed.conf
  4. Potom musíme vytvořit další konfigurační fragment:$ sudo nano /etc/nginx/snippets/ssl-params.conf
  5. Do tohoto souboru zadejte následující obsah, poté jej uložte a ukončete. Všimněte si, že protože používáme certifikát s vlastním podpisem, řádek 9 a řádek 10, které se týkají sešívání SSL, byly zakomentovány. Pokud nepoužíváte certifikát podepsaný svým držitelem, odkomentujte tyto dva řádky.
    ssl_protocols TLSv1.2;
    ssl_prefer_server_ciphers on;
    ssl_dhparam /etc/ssl/certs/dhparam.pem;
    ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256->
    ssl_ecdh_curve secp384r1;                          
    ssl_session_timeout  10m;
    ssl_session_cache shared:SSL:10m;
    ssl_session_tickets off;                          
    # ssl_stapling on;                          
    # ssl_stapling_verify on;                          
    resolver 8.8.8.8 8.8.4.4 valid=300s;
    resolver_timeout 5s;
    add_header X-Frame-Options DENY;
    add_header X-Content-Type-Options nosniff;
    add_header X-XSS-Protection "1; mode=block";

    Konfigurace fragmentu SSL ssl-params.conf
  6. Dále spusťte následující příkaz pro vygenerování dhparam.pem soubor:
    $ sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048
    

    Generování souboru dhparam.pem
  7. Nyní, když je konfigurace SSL dokončena, musíme nakonfigurovat Nginx tak, aby používal SSL. Otevřete konfigurační soubor Nginx, který jsme dříve vytvořili pro náš web WordPress:
    $ sudo nano /etc/nginx/sites-available/wordpress
    
  8. V rámci server bloku, musíme přidat následující čtyři řádky:
    	listen 443 ssl;
    	listen [::]:443 ssl;
    	include snippets/self-signed.conf;
    	include snippets/ssl-params.conf;
    

    Tyto čtyři řádky jsou nezbytné k povolení protokolu SSL na našem webu WordPress
  9. Před zavřením souboru uložte změny a poté restartujte Nginx:
    $ sudo systemctl restart nginx
    

Váš web WordPress bude nyní moci používat šifrování SSL:

Web WordPress nyní používá šifrování SSL (HTTPS).

Závěr

WordPress používají miliony, od 500 společností až po malé blogery. Využívá špičkové komponenty a funguje skvěle na Ubuntu 20.04 Focal Fossa – kombo, které je opravdu těžké překonat.

V tomto článku jsme viděli, jak nainstalovat a nakonfigurovat Nginx, PHP a MySQL, abychom mohli provozovat web WordPress. Přestože konfigurace zabere trochu času, stojí za to. Nginx je rychlejší než jiné webové servery a WordPress vám poskytuje úhledný web hned po vybalení.


Ubuntu
  1. Jak nainstalovat Nginx s PHP5 a MySQL na Ubuntu 11.10

  2. Nainstalujte WordPress na Nginx Ubuntu

  3. Nainstalovat phpMyAdmin s Nginx na Ubuntu 18.04 – proces krok za krokem?

  1. Ubuntu 20.04 WordPress s instalací Apache

  2. Hostujte WordPress v Ubuntu 20.04, Mysql 8, Ubuntu 20.04, Nginx

  3. Nainstalujte WordPress s Varnish a Nginx na Ubuntu

  1. Instalace WordPressu na Ubuntu Linux s Apache a MySQL

  2. Instalace Ubuntu 22.04 LAMP

  3. Jak nainstalovat WordPress s Nginx na Ubuntu 18.04