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.
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:
Vybrat 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:
WordPress byl nainstalován a kliknout na Přihlásit se:
Po přihlášení naskočí úvodní stránka:
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
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
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