Pokračujeme v rozšiřování našeho trhu. Nedávno jsme vám řekli, jak na to vytvořil obrázek Gitlabu, a tento týden se na našem tržišti objevil Drupal.
Řekneme vám, proč jsme si ho vybrali a jak obrázek vznikl.
Drupal — pohodlná a výkonná platforma pro tvorbu jakéhokoli typu webových stránek: od microsites a blogů až po velké sociální projekty, používaná také jako základ pro webové aplikace, napsaná v PHP a využívající relační databáze jako úložiště dat.
Drupal 9 obsahuje všechny funkce představené ve verzi 8.9. Klíčový rozdíl mezi verzí 9 a verzí 8 je v tom, že platforma bude i po listopadu 2021 nadále dostávat aktualizace a opravy zabezpečení. Verze 9 také zjednodušuje proces aktualizace, čímž je proces upgradu z verze 8 ještě jednodušší.
Požadavky na server
Pro použití Drupalu se doporučuje použít 2 GB RAM a 2 jádra CPU.
Hlavní soubory Drupalu zabírají asi 100 MB, navíc budete potřebovat prostor pro ukládání obrázků, databáze, motivů, doplňkových modulů a záloh, což bude záviset na velikosti vašeho webu.
Drupal 9 vyžaduje PHP 7.4 nebo vyšší s minimálním omezením (memory_limit) pro 64 MB paměti, v případě použití přídavných modulů se doporučuje nainstalovat 128 MB.
Drupal může používat Apache nebo Nginx jako webový server a MySQL, PostgreSQL nebo SQLite jako databázi.
Budeme instalovat Drupal pomocí Nginx a MySQL.
Instalace
Pojďme aktualizovat nainstalované balíčky na nejnovější verzi:
sudo dnf update -y
Přidejme trvalé oprávnění pro příchozí provoz na porty http/80 a https/443:
Protože hlavní úložiště Centos aktuálně používá PHP 7.2, přidejte úložiště REMI s PHP 7.4 (minimální verze pro Drupal 9).
Chcete-li to provést, přidejte úložiště EPEL (vyžadované úložištěm REMI):
Protože vytváříme šablonu pro VDS a mohou být pomalé, přidáme zpoždění startu mysqld o 30 sekund, jinak mohou nastat problémy se spuštěním serveru během počátečního spouštění systému:
sudo sed -i '/Group=mysql/a
ExecStartPre=/bin/sleep 30
' /usr/lib/systemd/system/mysqld.service
Pojďme změnit skupinu a uživatele, pod kterými bude nginx běžet, provedením změn v /etc/php-fpm.d/www.conf:
sudo sed -i --follow-symlinks 's/user = apache/user = nginx/g' /etc/php-fpm.d/www.conf
sudo sed -i --follow-symlinks 's/group = apache/group = nginx/g' /etc/php-fpm.d/www.conf
Změňme podle toho vlastníka adresáře PHP sessions na nginx:
sudo chown -R nginx. /var/lib/php/session
Odeberme řádky s komentáři z konfiguračního souboru /etc/nginx/nginx.conf (aby neexistovaly žádné dvojité spouštěče pro sed):
sudo sed -i -e '/^[ t]*#/d' /etc/nginx/nginx.conf
Přidejte nastavení komprese gzip do /etc/nginx/nginx.conf
Přidáme nastavení indexového souboru index.php do /etc/nginx/nginx.conf:
sudo sed -i '/ root /usr/share/nginx/html;/a
index index.php index.html index.htm;
' /etc/nginx/nginx.conf
Přidejme nastavení pro výchozí server: zpracování PHP přes php-fpm socket, deaktivujeme protokol pro statické soubory, prodloužíme dobu expirace, zakážeme přístup a protokol chyb pro favicon.ico a robots.txt a odepřeme přístup k .ht soubory pro každého:
Po spuštění VDS ze snímku provedeme počáteční nastavení serveru MySQL spuštěním skriptu:
mysql_secure_installation
Povolíme validátor hesel:
Would you like to setup VALIDATE PASSWORD component? : y
Nastavíme heslo pro uživatele root MySQL:
New password:
Re-enter new password:
Pojďme odstranit anonymní uživatele:
Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Zabraňme root ve vzdáleném připojení:
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Smažeme testovací databázi:
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
Znovu načteme tabulky oprávnění:
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Poté, abychom dokončili instalaci, můžeme přejít na vps_ip_address
Na této adrese uvidíme instalační stránku Drupalu.
Vyberme jazyk, který se má použít. Například: ruština. Klikněte na „Uložit a pokračovat“
Vybereme instalační profil (demo slouží pouze k seznámení se systémem). V našem případě nechť je to „standardní“.
Na další stránce pojmenujeme databázi, například „drupal“. Uveďme uživatelské jméno databáze root a heslo, které mu bylo přiděleno při spuštění mysql_secure_installation. Klikněte na „Uložit a pokračovat“.
Počkejte na dokončení instalace a aktualizace překladů (proces může trvat několik minut).
Uvedeme název webu, nastavíme e-mail webu (jménem kterého se budou zasílat upozornění webu), přihlašovací jméno, heslo a e-mail administrátorského účtu Drupal. V regionálním nastavení také nastavíme zemi a časové pásmo. A dokončete instalaci kliknutím na „Uložit a pokračovat“.
Poté můžete přejít na ovládací panel s vytvořeným přihlašovacím jménem a heslem správce Drupal.
Nastavení HTTPS (volitelné)
Chcete-li nakonfigurovat HTTPS, musí mít VDS platný název DNS, zadejte v
/etc/nginx/nginx.conf
v sekci server název serveru (například):
server_name domainname.ru;
Restartujeme nginx:
service nginx restart
Spustíme certbot:
sudo /usr/local/bin/certbot-auto --nginx
Zadejte svůj e-mail, odsouhlaste podmínky služby (A), Přihlaste se k odběru novinek (nepovinné) (N), vyberte názvy domén, pro které chcete certifikát vystavit (Zadejte pro každého).
Pokud vše proběhlo bez chyb, zobrazí se nám zpráva o úspěšném vydání certifikátů a konfiguraci serveru:
Congratulations! You have successfully enabled ...
Poté budou připojení k portu 80 přesměrována na 443 (https).
Chcete-li automaticky aktualizovat certifikáty, přidejte do /etc/crontab:
Toto nastavení je zamýšleno jako řešení problému spojeného s dynamickým určováním base_url a je navrženo tak, aby zabránilo útokům záhlaví HTTP HOST (když si váš web myslí, že jde o někoho jiného).
Chcete-li to provést, musíte v souboru nastavení zadat názvy důvěryhodných domén pro web.
V souboru
/usr/share/nginx/html/sites/default/settings.php Pojďme odkomentovat nebo přidat nastavení se vzory skutečných názvů webů, například:
Drupal podporuje APCu - Alternative PHP User Cache, verze 8 a 9 více využívají APCu jako krátkodobou lokální cache než předchozí verze. Výchozí velikost mezipaměti (32 MB) je vhodná pro většinu webů a nesmí překročit 512 MB.
Pro aktivaci nainstalujte modul PHP APCu:
dnf -y install php-pecl-apcu
Restartujte nginx a php-fpm:
service nginx restart
service php-fpm restart
Pokud používáte ruský jazyk a APCu s doporučenou velikostí paměti pro cache, může se vám na ovládacím panelu zobrazit varování, že velikost přidělené paměti pro cache je jiná než doporučená, ale ve skutečnosti vše funguje správně, a nesprávné varování bude s největší pravděpodobností opraveno v příštích aktualizacích.
Připomínáme, že si pro nás můžete udělat i obrázek
Existují tři možnosti, jak se zúčastnit.
Připravte si obrázek sami a získejte 3000 XNUMX rublů na svůj zůstatek
Pokud jste připraveni okamžitě se vrhnout do bitvy a vytvořit image, která vám chybí, připíšeme vám 3000 XNUMX rublů k vašemu vnitřnímu zůstatku, které můžete utratit na serverech.
Dejte podpoře vědět, že se chystáte vytvářet a testovat obrázky
Připíšeme vám 3000 XNUMX rublů a umožníme možnost vytvářet snímky
Objednejte si virtuální server s čistým operačním systémem
Nainstalujte software na tento VPS a nakonfigurujte jej
Napište pokyny nebo skript pro nasazení softwaru
Vytvořte snímek pro nakonfigurovaný server
Objednejte si nový virtuální server výběrem dříve vytvořeného snímku v rozevíracím seznamu „Šablona serveru“.
Pokud je server úspěšně vytvořen, přeneste materiály obdržené ve fázi 6 technické podpoře
Pokud dojde k chybě, můžete si u podpory zjistit důvod a opakovat nastavení
Pro majitele firem: nabídněte svůj software
Pokud jste vývojář softwaru, který je nasazen a používán na VPS, můžeme vás zahrnout do trhu. Takto vám můžeme pomoci přivést nové zákazníky, návštěvnost a povědomí. Napište nám