Continuăm să ne extindem piața. V-am spus recent cum a făcut o imagine Gitlab, iar în această săptămână Drupal a apărut pe piața noastră.
Vă spunem de ce l-am ales și cum a fost creată imaginea.
Drupal — o platformă convenabilă și puternică pentru crearea oricărui tip de site web: de la microsite-uri și bloguri până la proiecte sociale mari, folosită și ca bază pentru aplicații web, scrisă în PHP și folosind baze de date relaționale ca stocare de date.
Drupal 9 include toate caracteristicile introduse în versiunea 8.9. Diferența cheie între versiunea 9 și versiunea 8 este că platforma va continua să primească actualizări și remedieri de securitate după noiembrie 2021. Versiunea 9 simplifică, de asemenea, procesul de actualizare, făcând procesul de actualizare de la versiunea 8 și mai ușor.
Cerințele serverului
Pentru a utiliza Drupal, este recomandat să folosiți 2 GB RAM și 2 nuclee CPU.
Principalele fișiere Drupal ocupă aproximativ 100 MB, în plus veți avea nevoie de spațiu pentru a stoca imagini, baze de date, teme, module suplimentare și copii de rezervă, care vor depinde de dimensiunea site-ului dvs.
Drupal 9 necesită PHP 7.4 sau mai mare, cu o limitare minimă (memory_limit) pentru memorie de 64 MB; dacă se folosesc module suplimentare, se recomandă instalarea a 128 MB.
Drupal poate folosi Apache sau Nginx ca server web și MySQL, PostgreSQL sau SQLite ca bază de date.
Vom instala Drupal folosind Nginx și MySQL.
Instalare
Să actualizăm pachetele instalate la cea mai recentă versiune:
sudo dnf update -y
Să adăugăm permisiunea permanentă pentru traficul de intrare la porturile http/80 și https/443:
Deoarece depozitul principal Centos utilizează în prezent PHP 7.2, să adăugăm un depozit REMI cu PHP 7.4 (versiunea minimă pentru Drupal 9).
Pentru a face acest lucru, adăugați depozitul EPEL (solicitat de depozitul REMI):
Deoarece facem un șablon pentru VDS și acestea pot fi lente, vom adăuga o întârziere de pornire mysqld de 30 de secunde, altfel pot apărea probleme cu pornirea serverului în timpul pornirii inițiale a sistemului:
sudo sed -i '/Group=mysql/a
ExecStartPre=/bin/sleep 30
' /usr/lib/systemd/system/mysqld.service
Să schimbăm grupul și utilizatorul sub care va rula nginx, făcând modificări în /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
Să schimbăm proprietarul directorului de sesiuni PHP în nginx în consecință:
sudo chown -R nginx. /var/lib/php/session
Să eliminăm liniile cu comentarii din fișierul de configurare /etc/nginx/nginx.conf (astfel încât să nu existe declanșatoare duble pentru sed):
sudo sed -i -e '/^[ t]*#/d' /etc/nginx/nginx.conf
Adăugați setările de compresie gzip la /etc/nginx/nginx.conf
Să adăugăm setările fișierului index index.php la /etc/nginx/nginx.conf:
sudo sed -i '/ root /usr/share/nginx/html;/a
index index.php index.html index.htm;
' /etc/nginx/nginx.conf
Să adăugăm setări pentru serverul implicit: procesarea PHP prin socket-ul php-fpm, dezactivează jurnalul pentru fișierele statice, crește timpul de expirare, dezactivează jurnalul de acces și erori pentru favicon.ico și robots.txt și refuză accesul la .ht fișiere pentru toată lumea:
În această etapă vom opri serverul și vom face un instantaneu:
shutdown -h now
După lansarea VDS din instantaneu, vom efectua configurarea inițială a serverului MySQL prin rularea scriptului:
mysql_secure_installation
Să activăm validatorul de parole:
Would you like to setup VALIDATE PASSWORD component? : y
Să setăm parola pentru utilizatorul root MySQL:
New password:
Re-enter new password:
Să eliminăm utilizatorii anonimi:
Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Să împiedicăm root-ul să se conecteze de la distanță:
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Să ștergem baza de date de testare:
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
Să reîncărcăm tabelele de privilegii:
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
După aceasta, pentru a finaliza instalarea, putem merge la adresa_ip_vps
La această adresă vom vedea pagina de instalare a Drupal.
Să selectăm limba de utilizat. De exemplu: rusă. Faceți clic pe „Salvați și continuați”
Să selectăm un profil de instalare (demo-ul este folosit numai pentru a vă familiariza cu sistemul). În cazul nostru, să fie „standard”.
Pe pagina următoare vom da un nume bazei de date, de exemplu „drupal”. Să indicăm numele de utilizator al bazei de date root și parola care i-a fost dată când rulează mysql_secure_installation. Faceți clic pe „Salvați și continuați”.
Să așteptăm finalizarea instalării și a actualizării traducerilor (procesul poate dura câteva minute).
Vom indica numele site-ului, vom seta email-ul site-ului (în numele căruia vor fi trimise notificări de site), login, parola și e-mailul contului de administrator Drupal. De asemenea, vom seta țara și fusul orar în setările regionale. Și finalizați instalarea făcând clic pe „Salvați și continuați”.
După aceasta, puteți merge la panoul de control cu datele de conectare și parola de administrator Drupal create.
Configurarea HTTPS (opțional)
Pentru a configura HTTPS, VDS trebuie să aibă un nume DNS valid, specificați în
/etc/nginx/nginx.conf
în secțiunea server numele serverului (de exemplu):
server_name domainname.ru;
Să repornim nginx:
service nginx restart
Să lansăm certbot:
sudo /usr/local/bin/certbot-auto --nginx
Introduceți adresa dvs. de e-mail, acceptați termenii și condițiile (A), Abonați-vă la newsletter (opțional) (N), selectați numele de domenii pentru care doriți să eliberați un certificat (Enter for everyone).
Dacă totul a decurs fără erori, vom vedea un mesaj despre emiterea cu succes a certificatelor și configurarea serverului:
Congratulations! You have successfully enabled ...
După aceasta, conexiunile la portul 80 vor fi redirecționate la 443 (https).
Adăugați în /etc/crontab pentru a actualiza automat certificatele:
Configurarea securității gazdei de încredere (recomandat)
Această setare este concepută ca o soluție la problema asociată cu determinarea dinamică a URL-ului de bază și este concepută pentru a preveni atacurile HTTP HOST Header (atunci când site-ul dvs. crede că este altcineva).
Pentru a face acest lucru, trebuie să specificați nume de domenii de încredere pentru site în fișierul de setări.
În dosar
/usr/share/nginx/html/sites/default/settings.php Să anulăm comentariile sau să adăugăm o setare cu modele de nume reale de site, de exemplu:
Drupal acceptă APCu - Alternative PHP User Cache, versiunile 8 și 9 folosesc mai mult APCu ca cache local pe termen scurt decât versiunile anterioare. Dimensiunea implicită a memoriei cache (32 MB) este potrivită pentru majoritatea site-urilor și nu poate depăși 512 MB.
Pentru activare, instalați modulul PHP APCu:
dnf -y install php-pecl-apcu
Reporniți nginx și php-fpm:
service nginx restart
service php-fpm restart
Dacă utilizați limba rusă și APCu cu dimensiunea de memorie recomandată pentru cache, este posibil să vedeți un avertisment în panoul de control că dimensiunea memoriei alocate pentru cache este diferită de cea recomandată, dar de fapt totul funcționează corect, iar avertismentul incorect va fi corectat cel mai probabil în următoarele actualizări.
Dorim să vă reamintim că ne puteți face și o imagine
Există trei opțiuni pentru a participa.
Pregătiți singur imaginea și obțineți 3000 de ruble în sold
Dacă sunteți gata să vă grăbiți imediat în luptă și să creați imaginea care vă lipsește, vă vom credita cu 3000 de ruble din soldul dvs. intern, pe care le puteți cheltui pe servere.
Vă vom credita 3000 de ruble și vă vom permite posibilitatea de a crea instantanee
Comandați un server virtual cu un sistem de operare curat
Instalați software-ul pe acest VPS și configurați-l
Scrieți instrucțiuni sau script pentru implementarea software-ului
Creați un instantaneu pentru serverul configurat
Comandați un nou server virtual selectând instantaneul creat anterior în lista derulantă „Șablon de server”
Dacă serverul este creat cu succes, transferați materialele primite în etapa 6 către suport tehnic
Dacă există o eroare, puteți verifica motivul la asistență și puteți repeta configurarea
Pentru proprietarii de afaceri: oferiți-vă software-ul
Dacă sunteți un dezvoltator de software care este implementat și utilizat pe VPS, atunci vă putem include pe piață. Acesta este modul în care vă putem ajuta să aduceți clienți noi, trafic și conștientizare. Scrie-ne