V příštím článku se podíváme na to, jak můžeme nainstalovat WordPress s Nginx na Ubuntu 20.04. Tento CMS je jedním z nejpoužívanějších systémů pro správu obsahu s otevřeným zdrojovým kódem. Provozuje přibližně 60 milionů webových stránek. Je napsán v PHP a používá MariaDB / MySQL jako databázi pro ukládání informací.
V následujících řádcích uvidíme, jak lokálně nainstalovat WordPress s Nginx na Ubuntu 20.04. Z tohoto důvodu, než budete pokračovat bude to nutné mít nainstalovaný softwarový zásobník LEMP na Ubuntu 20.04 začít.
Nainstalujte WordPress s Nginx na Ubuntu 20.04
Nainstalujte si rozšíření PHP
Následující rozšíření jsou vyžadována, aby WordPress fungoval na Ubuntu 20.04. K jejich instalaci budeme muset pouze otevřít terminál (Ctrl + Alt + T) a spustit:
sudo apt update && sudo apt install php-dom php-simplexml php-ssh2 php-xml php-xmlreader php-curl php-exif php-ftp php-gd php-iconv php-imagick php-json php-mbstring php-posix php-sockets php-tokenizer
Vytvořte serverový blok Nginx pro WordPress
Pro instalaci WordPress vytvoříme blok serveru Nginx. Tento blok serveru vyžaduje název domény, číslo portu, kořen dokumentu, umístění registru atd.. V tomto příkladu jsou data, která použiji, následující. Nechte každého uživatele, aby si je přizpůsobil podle svých potřeb:
- Doménové jméno: www.wordpress.local
- Kořenový adresář dokumentu: /sites/www.wordpress.local/public_html/
- Protokoly: /sites/www.wordpress.local/logs/
Začněme vytvoření konfiguračního souboru bloku serveru v adresáři /etc/nginx/conf.d s příkazem:
sudo vim /etc/nginx/conf.d/www.wordpress.local.conf
Uvnitř souboru umístíme následující obsah:
server { server_name www.wordpress.local; root /sites/www.wordpress.local/public_html/; index index.html index.php; access_log /sites/www.wordpress.local/logs/access.log; error_log /sites/www.wordpress.local/logs/error.log; # No permitir que las páginas se representen en un iframe en dominios externos add_header X-Frame-Options "SAMEORIGIN"; # Prevención MIME add_header X-Content-Type-Options "nosniff"; # Habilitar el filtro de secuencias de comandos entre sitios en los navegadores compatibles add_header X-Xss-Protection "1; mode=block"; # Evitar el acceso a archivos ocultos location ~* /\.(?!well-known\/) { deny all; } # Evitar el acceso a ciertas extensiones de archivo location ~\.(ini|log|conf)$ { deny all; } # Habilitar enlaces permanentes de WordPress location / { try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { include /etc/nginx/fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } }
Uložíme soubor a ukončíme. Tak pojďme vytvořte kořenový adresář dokumentu a adresář záznamů pomocí příkazů:
sudo mkdir -p /sites/www.wordpress.local/public_html/ sudo mkdir -p /sites/www.wordpress.local/logs/
Pokračujeme kontrola konfiguračních souborů Nginx:
sudo nginx -t
Zpráva jako ta na předchozím snímku obrazovky potvrdí, že je konfigurace serveru Nginx správná. Nakonec restartujeme službu:
sudo systemctl restart nginx.service
Vytvořte databázi pro WordPress
Pojďme se přihlásit do MariaDB / MySQL:
sudo mysql -u root -p
Pak vytvoříme databázi pro WordPress:
CREATE DATABASE wordpress;
Následující bude vytvořit uživatele:
CREATE USER 'wpusuario'@'localhost' IDENTIFIED BY '123password';
Pokračujeme udělování oprávnění vytvořenému uživateli k přístupu do databáze:
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpusuario'@'localhost';
A můžeme skvrna:
quit
Stažení WordPress
Stahujeme nejnovější verzi WordPressu de WordPress.org s wget:
wget http://wordpress.org/latest.tar.gz
Tak pojďme rozbalte balíček WordPress s příkazem dehet:
tar -zxvf latest.tar.gz
Následující bude přesuňte soubory WordPress do kořenového adresáře dokumentu:
sudo mv wordpress/* /sites/www.wordpress.local/public_html/
Pokračujeme ve změně vlastnosti, aby Nginx mohl zapisovat soubory do kořenového adresáře dokumentu:
sudo chown -R www-data:www-data /sites/www.wordpress.local/public_html/ sudo chown -R www-data:www-data /sites/www.wordpress.local/logs/
Tak pojďme vytvořit položku hostitele pro doménu (v tomto příkladu www.wordpress.local) v souboru / Etc / hosts, v případě, že naše prostředí nemá server DNS pro překlad jmen:
sudo vim /etc/hosts
Uvnitř souboru přidáme položku, jak je znázorněno níže. Použitá IP je adresa mého lokálního počítače.
Nainstalujte WordPress
Po datech v tomto příkladu se chystáme otevřete webový prohlížeč a navštivte adresu URL:
http://www.wordpress.local
To nás dovede k Průvodce instalací WordPress.
Budeme muset napište podrobnosti o databázi a umožněte WordPressu se k ní připojit. Budou to data databáze vytvořené dříve
Pokud je připojení úspěšné, zobrazí se na nové obrazovce zpráva o úspěchu. Chcete-li pokračovat, stačí kliknout na Spusťte instalaci.
Na další obrazovce budeme muset napište název webu, uživatele administrátora WordPress, heslo a e-mailovou adresu. Na další obrazovku přejdeme kliknutím na Instalovat WordPress.
Pokud vše půjde dobře, instalace WordPressu je nyní dokončena. Nyní můžeme kliknout na Přístup pro přístup k administrátorovi WordPress (Backend).
A odtud můžeme začít vyvíjet naše stránky:
Nakonfigurujte maximální velikost nahrávání souboru
Ve výchozím nastavení neumožňuje PHP nahrávání souborů větších než 2 MB. Chcete-li povolit nahrávání větších souborů prostřednictvím webového rozhraní WordPress, budeme muset nakonfigurovat upload_max_filesize a post_max_size v php.ini.
sudo vim /etc/php/7.4/fpm/php.ini
Tady jdeme na hledat upload_max_filesize y změnit velikost nahrávání na 256M, pokud je to to, co potřebujete:
upload_max_filesize = 256M
Budeme také hledat post_max_size a změníme velikost nahrávání podle našich potřeb:
post_max_size = 256M
Chcete-li dokončit přidáme hlavní modul client_max_body_size v konfiguračním souboru serveru Nginx.
sudo vim /etc/nginx/nginx.conf
Direktivu lze přidat do bloku HTTP (pro všechny weby), konkrétní blok serveru nebo kontext umístění.
client_max_body_size 256M;
Uložíme soubor a ukončíme. Nakonec restartujeme služby:
sudo systemctl restart php7.4-fpm.service sudo systemctl restart nginx.service
A s tím budeme mít WordPress nainstalovaný místně na Ubuntu 20.04.
To nefunguje 🙁
Ahoj. V jakém okamžiku selhala instalace?
Jak mohu nakonfigurovat Nginx pro přístup z externího počítače ze stejné místní sítě?
Při použití uvedené konfigurace a pokusu o zadání názvu přístup k výchozí Nginx.