Instalace WordPress na Ubuntu (Install WordPress Ubuntu)

By | 25/08/2020

Last Updated on 08/11/2023 by administrator

Instalace WordPress na Linuxu (Install WordPress Linux)

Instalace WordPress Ubuntu

Motivace:

Článek popisuje instalaci a konfiguraci nejrozšířenějšího redakčního nástroje WordPress. WordPress je open source redakční systém, kterým lze spravovat obsah webu. Je velmi intuitivní, jednoduchý a je možné jej nainstalovat i v češtině.

OS:

Implementace instalace WordPress Ubuntu byla prováděna na Ubuntu 18.04 LTS.

Implementace [1]:

Prerekvizitou je mít nainstalovaný LAMP balíček. Tato instalace a konfigurace je uvedená v předchozím článku Instalace LAMP (Linux, Apache, MySQL, PHP) na Ubuntu.

Instalace LAMP (Linux, Apache, MySQL, PHP) na Ubuntu

1. Vytvoření MySQL databáze a uživatele pro WordPress:

Přihlášení do databáze (-u = username, -p = password):

mysql -u root -p

Výpis příkazu mysql -u root -p požádá o použití MySQL root hesla, které bylo nastaveno v předchozím článku.

Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.30-0ubuntu0.18.04.1 (Ubuntu)

Nejdřív se vytvoří samostatná databáze pro WordPress. Jméno databáze lze libovolně zvolit. V tomto případě se databáze bude nazývat wpress:

mysql> CREATE DATABASE wpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Pozn. Každý MySQL příkaz musí končit středníkem (;).

Příkazem bude vytvořen nový MySQL uživatel s heslem a udělíme mu přístup k databázi wpress. Jméno uživatele lze libovolně zvolit. V tomto případě se bude vytvořen uživatel wpressuser:

mysql> GRANT ALL ON wpress.* TO 'wpressuser'@'localhost' IDENTIFIED BY 'nejakesilneheslo';

Příkaz FLUSH PRIVILEGES; aplikuje nové změny:

mysql> FLUSH PRIVILEGES;

Všechno nastaveno, nyní je možné opustit MySQL shell příkazem:

mysql> exit

2. Instalace dalších rozšíření PHP:

Při instalaci balíčku LAMP byla nainstalována jen minimální sada PHP rozšíření, aby mohlo PHP komunikovat s MySQL. Mnoho pluginů WordPress vyžaduje další rozšíření PHP:

Aktualizace seznamu balíčků z repozitářů:

sudo apt update

Instalace PHP rozšíření:

sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip

Pozn. Některé WordPress pluginy mohou vyžadovat další balíčky PHP

Restartovat Apache:

sudo systemctl restart apache2

3. Úprava Apache konfigurace pro přepisování .htaccess:

Předpokladem je mít konfigurační soubor pro svůj web v adresáři /etc/apache2/sites-available/, což bylo popsáno v tomto článku. Jako příklad bude použitý z článku již předpřipravený soubor /etc/apache2/sites-available/mojedomena.conf. Ten definuje kořenový adresář pro instalaci WordPressu /var/www/mojedomena.

Povolení přepisování .htaccess:

Nyní je používání souborů .htaccess zakázáno, ty ale WordPress a mnoho jeho pluginů používá, proto budou povoleny nastavením direktivy AllowOverride. Otevřít soubor mojedomena.conf

sudo vim /etc/apache2/sites-available/mojedomena.conf

A vložit blok textu do bloku VirtualHost:

<Directory /var/www/mojedomena/>
   AllowOverride All
</Directory>

Výsledný text v souboru mojedomena.conf, pak může vypadat takto:

<VirtualHost *:80>
   ServerAdmin webmaster@localhost
   ServerName mojedomena
   ServerAlias www.mojedomena
   DocumentRoot /var/www/mojedomena
   ErrorLog ${APACHE_LOG_DIR}/error.log
   CustomLog ${APACHE_LOG_DIR}/access.log combined

<Directory /var/www/mojedomena/>
   AllowOverride All
</Directory>

</VirtualHost>

Povolit modul pro přepisování, pro využití trvalých odkazů ve WordPressu:

sudo a2enmod rewrite

Otestování konfigurace:

sudo apache2ctl configtest

Vystup příkazu sudo apache2ctl configtest by měl ukázat:

Syntax OK

Zobrazí přehled konfigurace všech virtualhostů:

apachectl -S

Pozn. Může se objevit hláška níže, ale ta neovlivňuje funkčnost stránek. Důležité je aby se objevilo Syntax OK. Pokud jen přece chcete hlášce předejít, mrkněte na návod zde.

AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message

Pro aplikaci změn restartovat Apache:

sudo systemctl restart apache2

4. Stažení WordPress:

Stažení nejnovější verze WordPress do složky tmp (tmp je zapisovatelný adresář):

cd /tmp
curl -O https://wordpress.org/latest.tar.gz

Rozbalit komprimovaný soubor latest.tar.gz:

tar xzvf latest.tar.gz

Přidat soubor .htaccess:

touch /tmp/wordpress/.htaccess

Protože wp-config.php neexistuje, je nutné jej zkopírovat ze souboru wp-config-sample.php:

cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php

Aby nedocházelo k problémům s oprávněními při automatické aktualizaci bude vytvořena složka upgrade:

mkdir /tmp/wordpress/wp-content/upgrade

Nyní se zkopíruje celý obsahu složky wordpress do našeho kořenového adresáře. Ten byl v tomto příkladu zvolen v /var/www/mojedomena:

sudo cp -a /tmp/wordpress/. /var/www/mojedomena/

Pozn. Po restartu či bootu serveru je automaticky obsah složky v tmp vymazán.

5. Konfigurace WordPress adresáře:

a. Nastavení práv:

Apache má pod Ubuntu defaultně v konfiguraci nastaveného uživatele www-data. Aby mohl Apache číst, zapisovat či aktualizovat soubory WordPressu, je potřeba změnit vlastníka a skupinu na www-data všech souborů v kořenovém adresáři /var/www/mojedomena/.

sudo chown -R www-data:www-data /var/www/mojedomena/

Dále ke potřeba změnit práva složek (d = directory) v adresáři /var/www/mojedomena/

sudo find /var/www/mojedomena/ -type d -exec chmod 750 {} \;

A také změnit práva souborů (f = regular file) v adresáři /var/www/mojedomena/

sudo find /var/www/mojedomena/ -type f -exec chmod 640 {} \;

Pozn. Některé pluginy mužou vyžadovat nastavení vyšších práv.

b. Nastavení konfiguračního souboru WordPress:

Je potřeba vygenerovat tajné klíče, které budou přidany do konfiguračního souboru. Jejich získání se provede příkazem:

curl -s https://api.wordpress.org/secret-key/1.1/salt/

Výstup příkazu curl -s https://api.wordpress.org/secret-key/1.1/salt/ může vypadat podobně. Upozornění – nekopírovat klíče níže!

define('AUTH_KEY',         '1jl/vqfs<XhdXoAPz9 DO NOT COPY THESE VALUES c_j{iwqD^<+c9.k<J@4H');
define('SECURE_AUTH_KEY',  'E2N-h2]Dcvp+aS/p7X DO NOT COPY THESE VALUES {Ka(f;rv?Pxf})CgLi-3');
define('LOGGED_IN_KEY',    'W(50,{W^,OPB%PB<JF DO NOT COPY THESE VALUES 2;y&,2m%3]R6DUth[;88');
define('NONCE_KEY',        'll,4UC)7ua+8<!4VM+ DO NOT COPY THESE VALUES #`DXF+[$atzM7 o^-C7g');
define('AUTH_SALT',        'koMrurzOA+|L_lG}kf DO NOT COPY THESE VALUES  07VC*Lj*lD&?3w!BT#-');
define('SECURE_AUTH_SALT', 'p32*p,]z%LZ+pAu:VY DO NOT COPY THESE VALUES C-?y+K0DK_+F|0h{!_xY');
define('LOGGED_IN_SALT',   'i^/G2W7!-1H2OQ+t$3 DO NOT COPY THESE VALUES t6**bRVFSD[Hi])-qS`|');
define('NONCE_SALT',       'Q6]U:K?j4L%Z]}h^q7 DO NOT COPY THESE VALUES 1% ^qUswWgn+6&xqHN&%');

Otevřít konfigurační soubor wp-config.php WordPressu:

vim /var/www/mojedomena/wp-config.php

A nahradit vygenerované hodnoty místo řádků níže:

define('AUTH_KEY',         'put your unique phrase here');
define('SECURE_AUTH_KEY',  'put your unique phrase here');
define('LOGGED_IN_KEY',    'put your unique phrase here');
define('NONCE_KEY',        'put your unique phrase here');
define('AUTH_SALT',        'put your unique phrase here');
define('SECURE_AUTH_SALT', 'put your unique phrase here');
define('LOGGED_IN_SALT',   'put your unique phrase here');
define('NONCE_SALT',       'put your unique phrase here');

Dále je potřeba ve stejném souboru wp-config.php upravit název databáze (DB_NAME), uživatele databáze (DB_USER) a heslo do databáze (DB_PASSWORD), což bylo nakonfigurováno v prvním bodě toho článku. Další změnou bude nastavení metody, kterou by měl WordPress použít k zápisu do souborového systému. Protože bylo uděleno webovému serveru oprávnění zápisu, bude definována metoda direct. Pokud se tato metoda s tímto aktuálním nastavení nenastaví, bude vyžadovány přihlašovací údaje pro FTP u některých akcí:

/** The name of the database for WordPress */
define('DB_NAME', 'wpress');

/** MySQL database username */
define('DB_USER', 'wpressuser');

/** MySQL database password */
define('DB_PASSWORD', 'nejakesilneheslo');

. . .

define('FS_METHOD', 'direct');

6. Dokončení instalace přes webové rozhraní:

Ověření funkce Apache se provede zadáním IP adresy serveru do vyhledávače:

http://ip_adresa_serveru_nebo_domenoveho_jmena

Mělo by se objevit něco jako:

Instalace WordPress UbuntuVybrat název webu a uživatelské jméno (zde doporučuji nepoužívat admin, administrator a tak podobně). Bezpečné heslo by se mělo automaticky vygenerovat. Vložit svůj realný email. Nakonec kliknout na Instalovat WordPress:

Instalace WordPress Ubuntu

WordPress byl nainstalován a kliknout na Přihlásit se:

Instalace WordPress Ubuntu

Po přihlášení naskočí úvodní stránka:

wordpress rozhrani

Instalace WordPress Ubuntu je hotova.

Mezi další obvyklé kroky patří nastavení trvalých odkazů v Nastavení > Trvalé odkazy, nebo výběr nové šablony Vzhled > Šablony.

Zdroje:

[1] https://www.digitalocean.com/community/tutorials/how-to-install-wordpress-with-lamp-on-ubuntu-18-04

Dobrovolný dar

Ahoj čtenáři, rád bych tě poprosil aby ses zamyslel, co je vše potřeba ke vzniku článku.
Jakožto amatérský softwarový kutil musím:

1) Nejdříve vše nastudovat v cizích jazycích.
2) Vše následně prakticky vyzkoušet.
3) Svoje poznatky a zkušenosti napsat do článku který si právě přečetl v jazyku kterému rozumíš.
4) Dát článku hlavu a patu a publikovat.

Každý článek zabere několik hodin práce, za kterou mi nikdo neplatí.
Prosím zvaž, kolik času jsem ti právě ušetřil.
Pokud ti to stojí aspoň za cenu jedné kávy, tak mi ji kup.
Předem moc děkuji.

Příspěvek tak můžeš provést zasláním libovolné částky na mé číslo účtu 1558701011/3030 Nebo můžeš dar poslat kliknutím na tento odkaz Podpořit tento WEB , který tě přesměruje na mou platební bránu Revolut.

Dar je také možné poslat ve formě Bitcoinu na BTC peněženku bc1qqdf5fp42a7srwwhh2rut8zr9x4jm5c8fqc9qw6

Veškeré peněžní prostředky budu také používat na zlepšení kvality své webové tvorby a na psaní nových technických návodů. Za každý dar předem děkuji.

2 thoughts on “Instalace WordPress na Ubuntu (Install WordPress Ubuntu)

  1. Petr

    Ahoj Martine,

    prosím Tě,začal jsem dělat ve wordpressu ale na OS win 10..mám účet ve wordpressu,webhosting atd.Ale zkouším to teď čerstvě na KUbuntu.Když přejdu na svoje stránky ve wordpressu zobrazuje se mi muj web docela divně.Tak jsem si stahl desktopovou aplikaci wordpressu,ale do něj se přes moje přihlašovací údaje nemohu přihlásit.Když budu postupovat dle výše napsaného postupu tak to půjde?Omlouvám se ,jsem úplný začátečník 🙂

    děkuji pěkně a s pozdravem Petr

    Reply
    1. administrator Post author

      Ahoj Petre,

      pokud budes provadet instalaci na Kubuntu 18.04 LTS, muzes postupovat podle tohodle navodu. Pokud se jedna jinou verzi Kubuntu napr. 20.04 ci novou 21.10, nastaveni se muze lisit.

      Diky za dotaz,
      Martin

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *