WordPress je populární software pro správu obsahu (CMS) napsaný v programovacím jazyce PHP. Díky popularitě WordPress zaujímá nejméně 43 procent podílu na trhu všech webových stránek. Jedním z důvodů, proč je populární, je to, že je zcela zdarma a snadno se nastavuje a spravuje.
WordPress není populární pouze pro blogování, ale používá se také pro e-commerce, fóra atd.
V tomto tutoriálu vás provedeme nastavením a instalací WordPress pomocí Ubuntu 22.04.
Začněme.
1 Aktualizace systému
Nejprve aktualizujme náš systém.
sudo apt update && apt upgrade
2 Instalace PHP a rozšíření PHP
Nechte nás nainstalovat rozšíření PHP a PHP potřebná ke správnému fungování WordPressu.
sudo apt install php php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip php-mysql php-fpm
Ověřte verzi PHP:
php -v
Output:
PHP 8.1.2 (cli) (built: Jul 21 2022 12:10:37) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.2, Copyright (c) Zend Technologies
with Zend OPcache v8.1.2, Copyright (c), by Zend Technologies
3 Instalace a konfigurace databáze
Vzhledem k tomu, že WordPress je postaven na PHP, databáze by měla být MySQL nebo MariaDB a v tomto tutoriálu nainstalujeme MariaDB.
sudo apt install mariadb-server -y
Dovolte nám povolit a spustit MariaDB.
systemctl enable mariadb --now
Zkontrolujte stav databáze MariaDB.
sudo systemctl status mariadb
Output:
● mariadb.service - MariaDB 10.6.7 database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2022-09-03 12:32:57 EDT; 2min 13s ago
Docs: man:mariadbd(8)
https://mariadb.com/kb/en/library/systemd/
Main PID: 123075 (mariadbd)
Status: "Taking your SQL requests now..."
Tasks: 9 (limit: 9456)
Memory: 57.2M
CPU: 425ms
CGroup: /system.slice/mariadb.service
└─123075 /usr/sbin/mariadbd
Zabezpečme databázi MariaDB.
sudo mysql_secure_installation
Output:
Securing the MySQL server deployment.
Enter password for user root:
The 'validate_password' component is installed on the server.
The subsequent steps will run with the existing configuration
of the component.
Using existing password for root.
Estimated strength of the password: 50
Change the password for root ? ((Press y|Y for Yes, any other key for No) : N
... skipping.
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Success.
Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Success.
By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
- Dropping test database...
Success.
- Removing privileges on test database...
Success.
Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
Success.
All done!
Restartujte službu MariaDB.
sudo systemctl restart mariadb
Dovolte nám vytvořit databázi a uživatele databáze pro náš web WordPress.
mysql -u root -p
MariaDB [(none)]> create database wordpress;
MariaDB [(none)]> grant all privileges on wordpress.* to 'wordpress_user'@'localhost' identified by 'your_secure_password';
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;
Nezapomeňte prosím změnit ‘vaše_zabezpečené_heslo ‘ k vašemu zabezpečenému heslu.
4 Stahování WordPress
sudo wget https://wordpress.org/latest.tar.gz -P /var/www/
Změňme adresář, kam jsme stáhli WordPress.
cd /var/www
Extrahujte soubor WordPress.
sudo tar -xvzf latest.tar.gz
Vytvořte .htaccess soubor.
sudo nano /var/www/wordpress/.htaccess
Dovnitř vložte následující.
# BEGIN WordPress
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
Vezměte prosím na vědomí, že .htaccess funguje pouze s webovým serverem Apache.
Uložte soubor a ukončete.
Změňte vlastnictví a skupinu na www-data.
sudo chown -R www-data:www-data wordpress
Opravíme oprávnění a nastavíme všechny složky na 755 a všechny soubory na 644.
sudo find /var/www/wordpress/ -type d -exec chmod 755 {} \;
sudo find /var/www/wordpress/ -type f -exec chmod 644 {} \;
5 Nastavení WordPress pomocí webového serveru Apache
Nejprve nainstalujme webový server Apache.
sudo apt install apache2
Povolte a spusťte Apache.
systemctl enable apache2 --now
Nyní vytvořte virtuálního hostitele.
sudo nano /etc/apache2/sites-available/wordpress.com.conf
Vložte následující do souboru wordpress.com.conf.
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/wordpress
ServerName domain.com
www.domain.com
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /var/www/wordpress/>
Options +FollowSymlinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
Nezapomeňte prosím změnit „doménu.com ” s názvem vaší domény.
Poté uložte a ukončete.
Nyní povolme virtuálního hostitele, který jsme vytvořili.
sudo a2ensite wordpress.com.conf
Povolit mod_rewrite.
sudo a2enmod rewrite
Restartujte Apache.
sudo systemctl restart apache2
6 Nastavení WordPress pomocí webového serveru Nginx
Nejprve nainstalujme Nginx.
sudo apt install nginx -y
Povolte a spusťte Nginx.
sudo systemctl enable nginx --now
Vytvořte blok serveru.
sudo nano /etc/nginx/sites-available/domain.com.conf
Vložte následující.
server {
server_name domain.comwww.domain.com;
access_log /var/log/nginx/domain.com.access.log;
error_log /var/log/nginx/domain.com.error.log;
root /var/www/wordpress;
index index.php;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
fastcgi_pass unix:/run/php/php-fpm.sock;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
}
Vezměte prosím na vědomí, že chcete změnit doménu.com do vaší vlastní domény.
Uložte soubor a ukončete.
Povolme konfigurační soubor nginx (blok serveru) .
sudo ln -s /etc/nginx/sites-available/domain.com.conf /etc/nginx/sites-enabled/
Restartujte Nginx.
sudo systemctl restart nginx
Ke svému webu WordPress byste měli mít přístup pomocí webového serveru Nginx.
7 Dokončení instalace WordPress
Dovolte nám dokončit instalaci přístupem k naší instanci WordPress s naší doménou na adrese http://domena.com .
Vyberte preferovaný jazyk a poté klikněte na Pokračovat .
Klikněte na Pojďme na to .
Zadejte Název databáze , Uživatelské jméno databáze a heslo uživatele databáze které jsme vytvořili v kroku 3 a opusťte hostitele databáze je Předpona tabulky tak, jak je, klikněte na Odeslat.
Klikněte na Spustit instalaci .
Vyplňte formuláře a klikněte na Instalovat WordPress .
To znamená, že instalace byla úspěšná a měli byste mít přístup ke svému webu WordPress.
8 Závěr
Naučili jste se, jak snadno nainstalovat WordPress na Ubuntu 22.04 s webovým serverem Nginx a Apache. Pokud se vám tento článek líbí, mohl by se vám líbit také náš článek o Drupalu.
Svou instanci WordPress můžete také zabezpečit instalací certifikátu SSL a můžete to udělat podle našeho průvodce na Let’s Encrypt.