Creando VPS Formula cum Drupal 9 in Cento 8

Ampliare mercatum nostrum pergimus. Nos nuper loquebatur quomodo fecit imaginem Gitlabet hac septimana Drupal in foro nostro apparuerunt.

Cur nos elegimus et quomodo imago creata sit.

Creando VPS Formula cum Drupal 9 in Cento 8

Drupal suggestum opportunum et potentissimum ad quodvis genus situs creandum: ex micrositis et diariis ad magna incepta socialia, quae etiam pro fundamento applicationum interretialium, in PHP scripta, et relationum databases utens notitia repono.

Drupal 9 comprehendit omnia lineamenta in versione 8.9. Clavis differentia inter versionem 9 et versionem 8 est quod suggestum updates et securitatem accepturae post diem Novembrem 2021 perget. Etiam in versione IX, processus upgrade simplicior est, processus upgrade faciens e versione 9 faciliorem.

Servo Requisita

Uti Drupal, commendatur uti 2 GB of RAM et 2 CPU nucleorum.

Summa Drupal files circa 100 MB sunt, praeterea spatium opus erit ad imagines reponendas, database, themata, additiones et tergum, quae ex magnitudine situs tui pendent.

Drupal IX requirit PHP 9 seu superiore ad minimum terminum (memory_limit) ad 64 MB memoriam, si modulis additis utendi, commendatur ut 128 MB instituatur.

Drupal uti potest Apache vel Nginx ut web server, et MySQL, PostgreSQL vel SQLite ut database.

Drupal utentes Nginx et MySQL instituemus.

occasum

Renova installed fasciculis ad tardus poema:

sudo dnf update -y

Addamus perpetuum licentiam adveniendi negotiationis ad http/80 et https/443 portus:

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https

Applicare nova praecepta firewall:

sudo systemctl reload firewalld

Nginx install:

sudo dnf install nginx -y

Initium et da Nginx servo:

sudo systemctl start nginx
sudo systemctl enable nginx

Cum PHP 7.2 nunc in repositorio principali Centos adhibetur, addamus repositorium REMI cum PHP 7.4 (versio minima pro Drupal 9).
Quod ut facias, repositorium EPEL adde (repositorium a REMI requisitum);

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

Addamus REMI Repositorium:

sudo dnf install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpm

Admitte php: moduli remi-7.4 ad install php 7.4:

sudo dnf module enable php:remi-7.4 -y

Instrue php-fpm et php-cli:

sudo dnf install -y php-fpm php-cli

PHP instrue modulorum quae pro Drupal ad opus requiruntur:

sudo dnf install -y php-mysqlnd php-date php-dom php-filter php-gd php-hash php-json php-pcre php-pdo php-session php-simplexml php-spl php-tokenizer php-xml

Nos quoque mbstring opcache modulorum PHP commendatos instituemus:

sudo dnf install -y php-mbstring php-opcache

MySQL servo install:

sudo dnf install mysql-server -y

Admitte et incipit a MySQL servo:

sudo systemctl start mysqld
sudo systemctl enable mysqld

Quoniam exemplum VDS facimus, et tardae esse possunt, mysqld initium morae 30 secundis addimus, alioquin problemata incipientes ministrare possunt in tabernus systematis initialis:

sudo sed -i '/Group=mysql/a 
ExecStartPre=/bin/sleep 30
' /usr/lib/systemd/system/mysqld.service

Mutationem globi et usoris sub quibus nginx curremus mutationibus /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

Mutare possessorem PHP directorium sessionis ad nginx secundum:

sudo chown -R nginx. /var/lib/php/session

Commentarium lineas a /etc/nginx/nginx.conf configurationis fasciculi removeamus (ut nullae sint duplicia hit pro sed);

sudo sed -i -e '/^[ t]*#/d'  /etc/nginx/nginx.conf

Add gzip compressionem occasus ad /etc/nginx/nginx.conf

sudo sed -i '/types_hash_max_size 2048;/a 

    gzip on;
    gzip_static on;
    gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript image/x-icon image/svg+xml application/x-font-ttf;
    gzip_comp_level 9;
    gzip_proxied any;
    gzip_min_length 1000;
    gzip_disable "msie6";
    gzip_vary on; 
' /etc/nginx/nginx.conf

Addamus occasus index.php index fasciculi ad /etc/nginx/nginx.conf:

sudo sed -i '/        root         /usr/share/nginx/html;/a 
        index index.php index.html index.htm;
' /etc/nginx/nginx.conf

Addamus occasus pro defectu server processus php per php-fpm nervum, stipitem pro static disable, tempus exspirare augere, accessum et errorem pro favicon.ico et robots.txt disable ac aditum negare ad .ht lima pro omnes;

sudo sed -i '/        location / {/a 
		try_files $uri $uri/ /index.php?q=$uri&$args;
        }
    
        location ~* ^.+.(js|css|png|jpg|jpeg|gif|ico|woff)$ {
        access_log off;
        expires max;
        }
    
        location ~ .php$ {
        try_files  $uri =404;
        fastcgi_pass   unix:/run/php-fpm/www.sock;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_intercept_errors on;
        fastcgi_ignore_client_abort off;
        fastcgi_connect_timeout 60;
        fastcgi_send_timeout 180;
        fastcgi_read_timeout 180;
        fastcgi_buffer_size 128k;
        fastcgi_buffers 4 256k;
        fastcgi_busy_buffers_size 256k;
        fastcgi_temp_file_write_size 256k;
        }
    
        location = /favicon.ico {
        log_not_found off;
        access_log off;
        }
    
        location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
        }
    
        location ~ /.ht {
        deny all;' /etc/nginx/nginx.conf

Install wget requiritur ut certbot install;

sudo dnf install wget -y

Download certbot documentum exsecutabile ex offsite:

cd ~
wget https://dl.eff.org/certbot-auto

Movere certbot ad /usr/loci/bin/:

mv certbot-auto /usr/local/bin/certbot-auto

Iura et dominium ad radicem et assignandum;

chown root /usr/local/bin/certbot-auto
chmod 0755 /usr/local/bin/certbot-auto

Instrue clientelas certibot et desine in hoc statu (Respons: Y, c);

certbot-auto

Exhibe tabularium cum novissima versione Drupal 9 ex situ:

cd ~
wget https://www.drupal.org/download-latest/tar.gz

Instrue bitumen exsolvere archivo:

sudo dnf install tar -y

Delere default lima in /usr/share/nginx/html/ Directory:

rm -rf /usr/share/nginx/html/*

Unzip tabellas directorio interretiali:

tar xf tar.gz -C /usr/share/nginx/html/

Lima e subdirectoria ad radicem indicis telae server movere:

mv /usr/share/nginx/html/drupal-9.0.7/* /usr/share/nginx/html/

Subdirectorium transeamus:

rm -rf /usr/share/nginx/html/drupal-9.0.7

Tabularium cum institutionem files delere:

rm -f ./tar.gz

Dominus de nginx files constitue:

chown -R nginx. /usr/share/nginx/html

In hac scaena averte nos servo et scapham accipiemus;

shutdown -h now

Post initium VDS e snapshot, initialem paroecialem MySQL servitoris currendo perficiemus;

mysql_secure_installation

Admitte password validator:

Would you like to setup VALIDATE PASSWORD component? : y

MySQL radix posuit in user password:

New password:
Re-enter new password:

Aufer anonymous users:

Remove anonymous users? (Press y|Y for Yes, any other key for No) : y

Praeveniamus radix a connectens remotius;

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y

Test database transeamus:

Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y

Reload privilegium tabularum;

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y

Deinde, ad institutionem perficiendam, ire possumus vps_ip_address
In hac inscriptione videbimus paginam cum institutione Drupal.

Lingua utendum Select. For example: Russian. Click "Save et Perge"

Institutionem profile eligamus (modo demo ad familiarizationem cum systema adhibetur). In nobis sit "vexillum".

Postero pagina nomen datorum, ut "drupal". Datorum usoris radicem usoris specificare et tesseram ei datam cum mysql_secure_installation incipiendo. Preme "Save et Perge".

Exspectemus institutionem et adaequationem translationum ad perficiendum (processus plura minuta capere potest).

Specificare nomen situs, pone electronicam situs (pro cuius situs notificationes venient), login, password et inscriptio administratoris Drupal rationi. Etiam regionem ac tempus zonam in occasu regionali ponemus. Ac perficere institutionem strepitando "Save et Perge".

Post hoc, potes ire ad tabulam ditionis cum administratore Drupal creato login et tesseram esse.

HTTPS occasum (libitum)

Configurare HTTPS, VDS nomen DNS validum habere debet, in . denotare

/etc/nginx/nginx.conf

in servo sectione nomen servo (exempli gratia);

server_name  domainname.ru;

Sileo nginx:

service nginx restart

Initium certbot:

sudo /usr/local/bin/certbot-auto --nginx

Intrant electronicam tuam, conveniunt termini servitii (A), scribe tabellario (libitum) (N), elige nomina domain pro quibus libellum emittere vis (Intra pro omnibus).

Si omnia sine mendis exierunt, nuntium videbimus de prospero libellorum ac servo setup:

Congratulations! You have successfully enabled ...

Post hoc, nexus in portu 80 ad 443 (https) redigentur.

Add to /etc/crontab ad testimonium sponte renovandum:

# Cert Renewal
30 2 * * * root /usr/local/bin/certbot-auto renew --post-hook "nginx -s reload"

Profecta est Hostia Inquisitor Securitatis (suadetur)

Hic occasus intenditur solutionem problematis deprehensionis dynamicae basi_url, et intenditur ne impetus HTTP HOST Header (cum situs tuus alium esse putat).

Ad hoc faciendum, debes nomina credita domain nominare situs in uncinis fasciculi designare.

In file

/usr/share/nginx/html/sites/default/settings.php uncomment vel positionem addere cum exemplis actualium locorum nominum, exempli gratia:

$settings['trusted_host_patterns'] = [
  '^www.mydomain.ru$',
];

PHP Installing APCu (COMMENDED)

Drupal subsidia APCu - Alternative PHP Cache User, versiones 8 et 9 intensive utuntur APCu ut breve tempus cache locali quam versiones priorum. Defectus cache magnitudo (32 MB) pluribus locis conveniet et 512 MB excedere non potest.

Ut strenuus, PHP APCu moduli install:

dnf -y install php-pecl-apcu

Sileo nginx et php-fpm;

service nginx restart
service php-fpm restart

In casu linguae Russicae et APCu utendi cum magnitudine memoriae cache commendatae, videre potes admonitionem in tabulis moderandis magnitudinem memoriae cache partita ab uno commendato differre, re vera omnia bene et non recte operantur. Monitum erit verisimile in proximo updates figi.

Vel si cautio laedit oculum, uti potes correspondentes panni rudis a Collection.

Volumus te admonere te posse etiam imaginem nobis facere

Tres optiones quomodo participant.

Praeparate imaginem tibi et 3000 rubles in statera

Si paratus es ut statim in pugnam irruas et imaginem quam tibi ipsi cares efficias, 3000 rubellis ad stateram internam tuam tibi credemus - eam ministrantibus impendere potes.

Quomodo imaginem tuam creavisti:

  1. Rationem crea nobiscum website
  2. Dic subsidium quod creare ac temptare imagines
  3. Nos credemus tibi MMM rubles et facultatem creare snapshots
  4. Ut virtualis server cum mundo operating ratio
  5. Instrue programmata de hac VPS et pone eam
  6. Scribere instructiones vel scriptor pro software deployment
  7. Creare snapshot est felis server
  8. Mandare novum servitorem virtualem eligendo antea creatum snapshot in "Servi template" gutta-down album
  9. In casu felicis creationis servientis, materias acceptas ad gradum VI ad technicam sustentationem transferre
  10. In casu erroris, cum auxilio rationis inspicere potes et setup repetere

Pro negotiis dominis: offer software

Si elit programmatus es qui in VPS explicatur et usus es, tunc te in foro includere possumus. Hoc modo in novis clientibus, commercii et visibilitatis opem ferre possumus. scribe nobis

Scimus in comment, quam imaginem desideras?

Et nos ipsi eam parabimus

Creando VPS Formula cum Drupal 9 in Cento 8

Creando VPS Formula cum Drupal 9 in Cento 8

Source: www.habr.com