A’ cruthachadh Teamplaid VPS le Drupal 9 air Centos 8

Tha sinn a’ leantainn air adhart a’ leudachadh ar margaidh. Dh’ innis sinn dhuibh o chionn ghoirid ciamar rinn e dealbh Gitlab, agus an t-seachdain seo nochd Drupal nar margadh.

Innsidh sinn dhut carson a thagh sinn e agus mar a chaidh an ìomhaigh a chruthachadh.

A’ cruthachadh Teamplaid VPS le Drupal 9 air Centos 8

Drupal - àrd-ùrlar goireasach is cumhachdach airson seòrsa sam bith de làrach-lìn a chruthachadh: bho mhicro-làraich agus blogaichean gu pròiseactan sòisealta mòra, cuideachd air a chleachdadh mar bhunait airson tagraidhean lìn, sgrìobhte ann am PHP agus a’ cleachdadh stòran-dàta co-cheangailte mar stòradh dàta.

Tha Drupal 9 a’ toirt a-steach a h-uile feart a chaidh a thoirt a-steach ann an dreach 8.9. Is e am prìomh eadar-dhealachadh eadar dreach 9 agus dreach 8 gum bi an àrd-ùrlar fhathast a’ faighinn ùrachaidhean agus fuasglaidhean tèarainteachd às deidh Samhain 2021. Tha dreach 9 cuideachd a’ sìmpleachadh a’ phròiseas ùrachaidh, a’ dèanamh a’ phròiseas ùrachadh bho dhreach 8 eadhon nas fhasa.

Riatanasan an fhrithealaiche

Gus Drupal a chleachdadh, thathas a’ moladh 2 GB RAM agus coraichean 2 CPU a chleachdadh.

Gabhaidh na prìomh fhaidhlichean Drupal suas ri 100 MB, a bharrachd air sin bidh feum agad air àite airson ìomhaighean, stòr-dàta, cuspairean, modalan a bharrachd agus cùl-taic a stòradh, a bhios an urra ri meud na làraich agad.

Feumaidh Drupal 9 PHP 7.4 no nas àirde le cuingealachadh as ìsle (memory_limit) airson cuimhne 64 MB; ma thèid modalan a bharrachd a chleachdadh, thathas a’ moladh 128 MB a stàladh.

Faodaidh Drupal Apache no Nginx a chleachdadh mar fhrithealaiche lìn, agus MySQL, PostgreSQL no SQLite mar stòr-dàta.

Bidh sinn a’ stàladh Drupal a’ cleachdadh Nginx agus MySQL.

suidheachadh

Nach ùraich sinn na pacaidean stàlaichte chun dreach as ùire:

sudo dnf update -y

Nach cuir sinn cead maireannach airson trafaic a’ tighinn a-steach gu puirt http/80 agus https/443:

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

Nach cuir sinn na riaghailtean balla-teine ​​​​ùr an sàs:

sudo systemctl reload firewalld

Nach stàlaich sinn Nginx:

sudo dnf install nginx -y

Feuch an tòisich sinn agus leig leinn am frithealaiche Nginx:

sudo systemctl start nginx
sudo systemctl enable nginx

Leis gu bheil prìomh stòr Centos an-dràsta a’ cleachdadh PHP 7.2, leig dhuinn stòr REMI a chuir ris le PHP 7.4 (dreach as ìsle airson Drupal 9).
Gus seo a dhèanamh, cuir ris an stòr-dàta EPEL (a tha riatanach le stòr REMI):

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

Nach cuir sinn an stòr REMI ris:

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

Leig leinn am modal php:remi-7.4 a stàladh php 7.4:

sudo dnf module enable php:remi-7.4 -y

Stàlaich php-fpm agus php-cli:

sudo dnf install -y php-fpm php-cli

Nach stàlaich sinn na modalan PHP a tha a dhìth airson Drupal a bhith ag obair:

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

Stàlaichidh sinn cuideachd na modalan PHP mbstring opcache a thathar a’ moladh:

sudo dnf install -y php-mbstring php-opcache

Nach stàlaich sinn am frithealaiche MySQL:

sudo dnf install mysql-server -y

Tionndaidh sinn air agus tòisichidh sinn am frithealaiche MySQL:

sudo systemctl start mysqld
sudo systemctl enable mysqld

Leis gu bheil sinn a 'dèanamh teamplaid airson VDS, agus faodaidh iad a bhith slaodach, cuiridh sinn dàil tòiseachaidh mysqld de 30 diogan, air neo dh'fhaodadh gum bi duilgheadasan ann leis an fhrithealaiche a' tòiseachadh aig toiseach tòiseachaidh an t-siostaim:

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

Nach atharraich sinn am buidheann agus an neach-cleachdaidh fon ruith nginx le bhith a’ dèanamh atharrachaidhean air /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

Nach atharraich sinn sealbhadair an eòlaire seiseanan PHP gu nginx a rèir sin:

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

Thoir air falbh na loidhnichean le beachdan bhon fhaidhle rèiteachaidh /etc/nginx/nginx.conf (gus nach bi cnapan-starra dùbailte ann airson sed):

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

Cuir roghainnean teannachaidh gzip ri /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

Nach cuir sinn roghainnean an fhaidhle clàr-amais index.php gu /etc/nginx/nginx.conf:

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

Nach cuir sinn roghainnean airson an fhrithealaiche bunaiteach: giullachd PHP tron ​​​​t-socaid php-fpm, cuir dheth an loga airson faidhlichean statach, àrdaich an ùine crìochnachaidh, cuir à comas log inntrigidh is mearachd airson favicon.ico agus robots.txt, agus diùlt ruigsinneachd gu .ht faidhlichean airson a h-uile duine:

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

Stàlaich wget a dhìth airson certbot a stàladh:

sudo dnf install wget -y

Luchdaich sìos am faidhle so-ghnìomhaichte certbot bhon taobh a-muigh:

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

Gluais certbot gu /usr/local/bin/:

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

Agus sònraichidh sinn na còraichean mar an neach-seilbh airson freumhachadh:

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

Nach stàlaich sinn na h-eisimeileachd certbot agus aig an ìre seo cuir stad air an obair aige (Freagairtean: Y, c):

certbot-auto

Nach luchdaich sinn sìos an tasglann leis an dreach as ùire de Drupal 9 bhon taobh a-muigh:

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

Stàlaich teàrr gus an tasglann a dhì-phapadh:

sudo dnf install tar -y

Nach sguab sinn às na faidhlichean bunaiteach san eòlaire / usr/share/nginx/html/:

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

Leig leinn na faidhlichean a dhì-phapadh a-steach don eòlaire frithealaiche lìn:

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

Gluaisidh sinn na faidhlichean bhon fho-eòlaire gu eòlaire freumh an fhrithealaiche lìn:

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

Thoir air falbh am fo-eòlaire:

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

Nach sguab sinn às an tasglann le faidhlichean stàlaidh:

rm -f ./tar.gz

Sònraichidh sinn sealbhadair nam faidhlichean nginx:

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

Aig an ìre seo tionndaidhidh sinn am frithealaiche dheth agus gabhaidh sinn dealbh:

shutdown -h now

Às deidh dhuinn an VDS a chuir air bhog bhon dealbh, nì sinn a ’chiad stèidheachadh den t-seirbheisiche MySQL le bhith a’ ruith an sgriobt:

mysql_secure_installation

Leig leinn an dearbhadair facal-faire a chomasachadh:

Would you like to setup VALIDATE PASSWORD component? : y

Nach suidhich sinn am facal-faire airson an neach-cleachdaidh freumh MySQL:

New password:
Re-enter new password:

Bheir sinn air falbh luchd-cleachdaidh gun urra:

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

Feuch an cuir sinn casg air freumh bho bhith a’ ceangal air astar:

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

Leig leinn an stòr-dàta deuchainn a sguabadh às:

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

Leig leinn na clàran sochair ath-luchdachadh:

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

Às deidh seo, gus an stàladh a chrìochnachadh, faodaidh sinn a dhol gu vps_ip_seòladh
Aig an t-seòladh seo chì sinn duilleag stàlaidh Drupal.

Nach tagh sinn an cànan a chleachdas sinn. Mar eisimpleir: Ruiseanach. Cliog air “Sàbhail agus Lean air adhart”

Nach tagh sinn pròifil stàlaidh (tha an demo air a chleachdadh a-mhàin gus eòlas fhaighinn air an t-siostam). Anns a 'chùis againn, leig leis a bhith "àbhaisteach".

Air an ath dhuilleig bheir sinn ainm dhan stòr-dàta, mar eisimpleir “drupal”. Nach comharraich sinn freumh ainm neach-cleachdaidh an stòr-dàta agus am facal-faire a chaidh a thoirt dha nuair a bha e a’ ruith mysql_secure_installation. Cliog air “Sàbhail agus Lean air adhart.”

Fuirichidh sinn airson an stàladh agus ùrachadh nan eadar-theangachaidhean gus a chrìochnachadh (faodaidh am pròiseas grunn mhionaidean a thoirt).

Innsidh sinn ainm na làraich, suidhichidh sinn post-d na làraich (às leth an tèid fiosan làraich a chuir), logadh a-steach, facal-faire agus post-d cunntas rianadair Drupal. Suidhichidh sinn cuideachd an dùthaich agus an raon ùine anns na suidheachaidhean roinneil. Agus cuir crìoch air an stàladh le bhith a 'briogadh "Sàbhail agus Lean air adhart".

Às deidh seo, faodaidh tu a dhol chun phannal smachd leis an logadh a-steach agus facal-faire rianadair Drupal a chaidh a chruthachadh.

A’ stèidheachadh HTTPS (roghainneil)

Gus HTTPS a rèiteachadh, feumaidh ainm DNS dligheach a bhith aig an VDS, sònraich a-steach

/etc/nginx/nginx.conf

ann an roinn an fhrithealaiche ainm an fhrithealaiche (mar eisimpleir):

server_name  domainname.ru;

Nach tòisich sinn nginx:

service nginx restart

Nach cuir sinn air bhog certbot:

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

Cuir a-steach am post-d agad, aontaich ri teirmean seirbheis (A), fo-sgrìobh don chuairt-litir (roghainneil) (N), tagh na h-ainmean àrainn airson a bheil thu airson teisteanas a chuir a-mach (Cuir a-steach airson a h-uile duine).

Ma chaidh a h-uile càil às aonais mhearachdan, chì sinn teachdaireachd mu bhith a’ toirt seachad teisteanasan soirbheachail agus rèiteachadh an fhrithealaiche:

Congratulations! You have successfully enabled ...

Às deidh seo, thèid ceanglaichean gu port 80 ath-stiùireadh gu 443 (https).

Cuir ri /etc/crontab gus teisteanasan ùrachadh gu fèin-ghluasadach:

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

A’ stèidheachadh tèarainteachd aoigheachd earbsach (air a mholadh)

Tha an suidheachadh seo an dùil mar fhuasgladh don duilgheadas co-cheangailte ri dearbhadh base_url fiùghantach, agus tha e air a dhealbhadh gus casg a chuir air ionnsaighean Header HTTP HOST (nuair a tha an làrach agad den bheachd gur e cuideigin eile a th’ ann).

Gus seo a dhèanamh, feumaidh tu ainmean àrainn earbsach a shònrachadh airson na làraich ann am faidhle nan roghainnean.

Ann am faidhle

/usr/share/nginx/html/sites/default/settings.php Nach toir sinn beachd no cuir sinn suidheachadh le pàtrain de dh’ ainmean làraich fhèin, mar eisimpleir:

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

A' stàladh PHP APCu (MOLADH)

Bidh Drupal a’ toirt taic do APCu - Alternative PHP User Cache, bidh dreachan 8 agus 9 a’ dèanamh barrachd feum de APCu mar thasglann ionadail geàrr-ùine na dreachan roimhe. Tha am meud tasgadan bunaiteach (32 MB) freagarrach airson a’ mhòr-chuid de làraich, agus chan urrainn dha a bhith nas àirde na 512 MB.

Gus a ghnìomhachadh, stàlaich am modal PHP APCu:

dnf -y install php-pecl-apcu

Ath-thòisich nginx agus php-fpm:

service nginx restart
service php-fpm restart

Ma chleachdas tu an cànan Ruiseanach agus APCu leis a ’mheud cuimhne a thathar a’ moladh airson an tasgadan, is dòcha gum faic thu rabhadh anns a ’phannal smachd gu bheil meud a’ chuimhne ainmichte airson an tasgadan eadar-dhealaichte bhon fhear a chaidh a mholadh, ach gu dearbh tha a h-uile dad ag obair ceart, agus is coltaiche gun tèid an rabhadh ceàrr a cheartachadh anns na h-ath ùrachaidhean.

No ma tha an rabhadh a 'goirteachadh do shùilean, faodaidh tu a chleachdadh paiste co-fhreagarrach bhon taobh a-muigh.

Bu mhath leinn do chuimhneachadh gun urrainn dhut ìomhaigh a dhèanamh dhuinn cuideachd

Tha trì roghainnean ann airson mar a ghabhas sibh pàirt.

Ullaich an ìomhaigh thu fhèin agus faigh 3000 rubles gu do chothromachadh

Ma tha thu deiseil airson ruith sa bhlàr sa bhad agus an ìomhaigh a tha thu a dhìth a chruthachadh, bheir sinn creideas dhut le 3000 rubles don chothromachadh a-staigh agad, as urrainn dhut a chosg air frithealaichean.

Mar a chruthaicheas tu an ìomhaigh agad:

  1. Cruthaich cunntas leinn air adhart làrach
  2. Leig fios gu bheil thu gu bhith a’ cruthachadh agus a’ dèanamh deuchainn air ìomhaighean
  3. Bheir sinn creideas dhut 3000 rubles agus bheir sinn comas dhut dealbhan a chruthachadh
  4. Òrdaich frithealaiche brìgheil le siostam obrachaidh glan
  5. Stàlaich am bathar-bog air an VPS seo agus rèitich e
  6. Sgrìobh stiùireadh no sgriobt airson cleachdadh bathar-bog
  7. Cruthaich dealbh airson an fhrithealaiche rèiteachaidh
  8. Òrdaich frithealaiche brìgheil ùr le bhith a’ taghadh an dealbh a chaidh a chruthachadh roimhe seo anns an liosta tuiteam-sìos “Template Server”.
  9. Ma thèid am frithealaiche a chruthachadh gu soirbheachail, gluais na stuthan a gheibhear aig ìre 6 gu taic theicnigeach
  10. Ma tha mearachd ann, faodaidh tu sgrùdadh a dhèanamh le taic airson an adhbhar agus an suidheachadh ath-aithris

Do shealbhadairean gnìomhachais: thoir seachad am bathar-bog agad

Ma tha thu nad leasaiche bathar-bog a tha air a chleachdadh agus air a chleachdadh air VPS, is urrainn dhuinn do thoirt a-steach don mhargaidh. Seo mar as urrainn dhuinn do chuideachadh le bhith a’ toirt luchd-ceannach ùr, trafaic agus mothachadh. Sgrìobh thugainn

Inns dhuinn anns na beachdan dè an ìomhaigh a tha thu a dhìth?

Agus ullaichidh sinn sinn fhèin e

A’ cruthachadh Teamplaid VPS le Drupal 9 air Centos 8

A’ cruthachadh Teamplaid VPS le Drupal 9 air Centos 8

Source: www.habr.com