ΠΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ ΡΠ°ΡΡΠΈΡΡΡΡ Π½Π°Ρ ΠΌΠ°ΡΠΊΠ΅ΡΠΏΠ»Π΅ΠΉΡ. ΠΠ΅Π΄Π°Π²Π½ΠΎ ΠΌΡ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π»ΠΈ, ΠΊΠ°ΠΊ
Π Π°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ, ΠΏΠΎΡΠ΅ΠΌΡ Π²ΡΠ±ΡΠ°Π»ΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ Π΅Π³ΠΎ ΠΈ ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Π»ΡΡ ΠΎΠ±ΡΠ°Π·.
Drupal β ΡΠ΄ΠΎΠ±Π½Π°Ρ ΠΈ ΠΌΠΎΡΠ½Π°Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π»ΡΠ±ΡΡ ΡΠΈΠΏΠΎΠ² ΡΠ°ΠΉΡΠΎΠ²: ΠΎΡ ΠΌΠΈΠΊΡΠΎΡΠ°ΠΉΡΠΎΠ² ΠΈ Π±Π»ΠΎΠ³ΠΎΠ² Π΄ΠΎ ΠΊΡΡΠΏΠ½ΡΡ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ ΠΎΡΠ½ΠΎΠ²Π° Π΄Π»Ρ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½Π°ΠΏΠΈΡΠ°Π½Π½Π°Ρ Π½Π° ΡΠ·ΡΠΊΠ΅ PHP ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ°Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° Π΄Π°Π½Π½ΡΡ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
Drupal 9 Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ Π²ΡΠ΅ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π² Π²Π΅ΡΡΠΈΠΈ 8.9. ΠΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΠΎΡΠ»ΠΈΡΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ 9 ΠΎΡ Π²Π΅ΡΡΠΈΠΈ 8 ΡΠΎΡΡΠΎΠΈΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π΄Π»Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Π±ΡΠ΄ΡΡ Π²ΡΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΈ ΠΏΠΎΡΠ»Π΅ Π½ΠΎΡΠ±ΡΡ 2021 Π³ΠΎΠ΄Π°. Π’Π°ΠΊΠΆΠ΅ Π² Π²Π΅ΡΡΠΈΠΈ 9 ΡΠΏΡΠΎΡΡΠΈΠ»ΠΈ ΠΏΡΠΎΡΠ΅ΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ, Π΄Π΅Π»Π°Ρ ΠΏΡΠΎΡΠ΅ΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Ρ Π²Π΅ΡΡΠΈΠΈ 8 Π΅ΡΠ΅ ΠΏΡΠΎΡΠ΅.
Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ
ΠΠ»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Drupal ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ 2 ΠΠ± RAM ΠΈ 2 ΡΠ΄ΡΠ° CPU.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Drupal Π·Π°Π½ΠΈΠΌΠ°ΡΡ ΠΎΠΊΠΎΠ»ΠΎ 100 ΠΠ±, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π²Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΠΌΠ΅ΡΡΠΎ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ, Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΡΠ΅ΠΌ, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΈ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΡ ΠΊΠΎΠΏΠΈΠΉ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ Π·Π°Π²ΠΈΡΠΈΡΡ ΠΎΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π²Π°ΡΠ΅Π³ΠΎ ΡΠ°ΠΉΡΠ°.
ΠΠ»Ρ Drupal 9 ΡΡΠ΅Π±ΡΠ΅ΡΡΡ PHP 7.4 ΠΈΠ»ΠΈ Π²ΡΡΠ΅ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ (memory_limit
) Π½Π° ΠΏΠ°ΠΌΡΡΡ 64 ΠΠ±, Π² ΡΠ»ΡΡΠ°Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ 128 ΠΠ±.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠ° Drupal ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Apache ΠΈΠ»ΠΈ Nginx, Π° Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ MySQL, PostgreSQL ΠΈΠ»ΠΈ SQLite.
ΠΡ Π±ΡΠ΄Π΅ΠΌ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ Drupal Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Nginx ΠΈ MySQL.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΌ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π²Π΅ΡΡΠΈΠΈ:
sudo dnf update -y
ΠΠΎΠ±Π°Π²ΠΈΠΌ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π²Ρ ΠΎΠ΄ΡΡΠ΅Π³ΠΎ ΡΡΠ°ΡΠΈΠΊΠ° Π½Π° http/80 ΠΈ https/443 ΠΏΠΎΡΡΡ:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
ΠΡΠΈΠΌΠ΅Π½ΠΈΠΌ Π½ΠΎΠ²ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° ΡΠ°ΠΉΡΠ²ΠΎΠ»Π°:
sudo systemctl reload firewalld
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ Nginx:
sudo dnf install nginx -y
ΠΠ°ΠΏΡΡΡΠΈΠΌ ΠΈ Π²ΠΊΠ»ΡΡΠΈΠΌ ΡΠ΅ΡΠ²Π΅Ρ Nginx:
sudo systemctl start nginx
sudo systemctl enable nginx
Π’Π°ΠΊ ΠΊΠ°ΠΊ Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Centos ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²Π΅ΡΡΠΈΡ PHP 7.2, Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ REMI Ρ PHP 7.4 (ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΡ Π΄Π»Ρ Drupal 9).
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ EPEL (ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ REMI):
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
ΠΠΎΠ±Π°Π²ΠΈΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ REMI:
sudo dnf install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpm
ΠΠΊΠ»ΡΡΠΈΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ php:remi-7.4 Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ php 7.4:
sudo dnf module enable php:remi-7.4 -y
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ php-fpm ΠΈ php-cli:
sudo dnf install -y php-fpm php-cli
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ PHP ΠΌΠΎΠ΄ΡΠ»ΠΈ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΠ΅ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Drupal:
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
Π’Π°ΠΊ ΠΆΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ PHP mbstring opcache:
sudo dnf install -y php-mbstring php-opcache
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΡΠ΅ΡΠ²Π΅Ρ MySQL:
sudo dnf install mysql-server -y
ΠΠΊΠ»ΡΡΠΈΠΌ ΠΈ Π·Π°ΠΏΡΡΡΠΈΠΌ ΡΠ΅ΡΠ²Π΅Ρ MySQL:
sudo systemctl start mysqld
sudo systemctl enable mysqld
Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ Π΄Π΅Π»Π°Π΅ΠΌ ΡΠ°Π±Π»ΠΎΠ½ Π΄Π»Ρ VDS, Π° ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΠΌΠΈ, Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π·Π°Π΄Π΅ΡΠΆΠΊΡ ΡΡΠ°ΡΡΠ° mysqld 30 ΡΠ΅ΠΊΡΠ½Π΄, ΠΈΠ½Π°ΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠΎ ΡΡΠ°ΡΡΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΏΡΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ:
sudo sed -i '/Group=mysql/a
ExecStartPre=/bin/sleep 30
' /usr/lib/systemd/system/mysqld.service
ΠΠ·ΠΌΠ΅Π½ΠΈΠΌ Π³ΡΡΠΏΠΏΡ ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠ· ΠΏΠΎΠ΄ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ nginx Π²Π½Π΅ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² /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
ΠΠ·ΠΌΠ΅Π½ΠΈΠΌ Π²Π»Π°Π΄Π΅Π»ΡΡΠ° ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° ΡΠ΅ΡΡΠΈΠΉ PHP ΡΠ°ΠΊ ΠΆΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ Π½Π° nginx:
sudo chown -R nginx. /var/lib/php/session
Π£Π΄Π°Π»ΠΈΠΌ ΡΡΡΠΎΠΊΠΈ Ρ ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌΠΈ ΠΈΠ· ΡΠ°ΠΉΠ»Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ /etc/nginx/nginx.conf (ΡΡΠΎ Π±Ρ Π½Π΅ Π±ΡΠ»ΠΎ Π΄Π²ΠΎΠΉΠ½ΡΡ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΠΉ Π΄Π»Ρ sed):
sudo sed -i -e '/^[ t]*#/d' /etc/nginx/nginx.conf
ΠΠΎΠ±Π°Π²ΠΈΠΌ Π² /etc/nginx/nginx.conf Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΊΠΎΠΌΠΏΡΠ΅ΡΡΠΈΠΈ gzip
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
ΠΠΎΠ±Π°Π²ΠΈΠΌ Π² /etc/nginx/nginx.conf Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° index.php:
sudo sed -i '/ root /usr/share/nginx/html;/a
index index.php index.html index.htm;
' /etc/nginx/nginx.conf
ΠΠΎΠ±Π°Π²ΠΈΠΌ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΄Π»Ρ Π΄Π΅ΡΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ php ΡΠ΅ΡΠ΅Π· ΡΠΎΠΊΠ΅Ρ php-fpm, ΠΎΡΠΊΠ»ΡΡΠΈΠΌ Π»ΠΎΠ³ Π΄Π»Ρ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ², ΡΠ²Π΅Π»ΠΈΡΠΈΠΌ Π²ΡΠ΅ΠΌΡ expire, ΠΎΡΠΊΠ»ΡΡΠΈΠΌ Π»ΠΎΠ³ Π΄ΠΎΡΡΡΠΏΠ° ΠΈ ΠΎΡΠΈΠ±ΠΎΠΊ Π΄Π»Ρ favicon.ico ΠΈ robots.txt ΠΈ Π·Π°ΠΏΡΠ΅ΡΠΈΠΌ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ°ΠΉΠ»Π°ΠΌ .ht Π΄Π»Ρ Π²ΡΠ΅Ρ :
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
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ wget ΡΡΠ΅Π±ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ certbot:
sudo dnf install wget -y
Π‘ΠΊΠ°ΡΠ°Π΅ΠΌ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΡΠ°ΠΉΠ» certbot Ρ ΠΎΡΡΡΠ°ΠΉΡΠ°:
cd ~
wget https://dl.eff.org/certbot-auto
ΠΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΠΌ certbot Π² /usr/local/bin/:
mv certbot-auto /usr/local/bin/certbot-auto
Π Π½Π°Π·Π½Π°ΡΠΈΠΌ ΠΏΡΠ°Π²Π° ΠΈ Π²Π»Π°Π΄Π΅Π»ΡΡΠ΅ΠΌ root:
chown root /usr/local/bin/certbot-auto
chmod 0755 /usr/local/bin/certbot-auto
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ certbot ΠΈ Π½Π° Π΄Π°Π½Π½ΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΠΏΡΠ΅ΡΠ²Π΅ΠΌ Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΡ (ΠΡΠ²Π΅ΡΡ: Y, c):
certbot-auto
Π‘ΠΊΠ°ΡΠ°Π΅ΠΌ Ρ ΠΎΡΡΡΠ°ΠΉΡΠ° Π°ΡΡ ΠΈΠ² Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π²Π΅ΡΡΠΈΠ΅ΠΉ Drupal 9:
cd ~
wget https://www.drupal.org/download-latest/tar.gz
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ tar Π΄Π»Ρ ΡΠ°ΡΠΏΠ°ΠΊΠΎΠ²ΠΊΠΈ Π°ΡΡ ΠΈΠ²Π°:
sudo dnf install tar -y
Π£Π΄Π°Π»ΠΈΠΌ ΡΠ°ΠΉΠ»Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ /usr/share/nginx/html/:
rm -rf /usr/share/nginx/html/*
Π Π°ΡΠΏΠ°ΠΊΡΠ΅ΠΌ ΡΠ°ΠΉΠ»Ρ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠ°:
tar xf tar.gz -C /usr/share/nginx/html/
ΠΠ΅ΡΠ΅Π½Π΅ΡΠ΅ΠΌ ΡΠ°ΠΉΠ»Ρ ΠΈΠ· ΠΏΠΎΠ΄ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° Π² ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠ°:
mv /usr/share/nginx/html/drupal-9.0.7/* /usr/share/nginx/html/
Π£Π΄Π°Π»ΠΈΠΌ ΠΏΠΎΠ΄ΠΊΠ°ΡΠ°Π»ΠΎΠ³:
rm -rf /usr/share/nginx/html/drupal-9.0.7
Π£Π΄Π°Π»ΠΈΠΌ Π°ΡΡ ΠΈΠ² Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΎΡΠ½ΡΠΌΠΈ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ:
rm -f ./tar.gz
ΠΠ°Π·Π½Π°ΡΠΈΠΌ Π²Π»Π°Π΄Π΅Π»ΡΡΠ΅ΠΌ ΡΠ°ΠΉΠ»ΠΎΠ² nginx:
chown -R nginx. /usr/share/nginx/html
ΠΠ° Π΄Π°Π½Π½ΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΠΌΡ Π²ΡΠΊΠ»ΡΡΠΈΠΌ ΡΠ΅ΡΠ²Π΅Ρ ΠΈ ΡΠ΄Π΅Π»Π°Π΅ΠΌ ΡΠ½Π°ΠΏΡΠΎΡ:
shutdown -h now
ΠΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ° VDS ΠΈΠ· ΡΠ½Π°ΠΏΡΠΎΡΠ° Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΡ MySQL ΡΠ΅ΡΠ²Π΅ΡΠ° Π·Π°ΠΏΡΡΡΠΈΠ² ΡΠΊΡΠΈΠΏΡ:
mysql_secure_installation
ΠΠΊΠ»ΡΡΠΈΠΌ Π²Π°Π»ΠΈΠ΄Π°ΡΠΎΡ ΠΏΠ°ΡΠΎΠ»Π΅ΠΉ:
Would you like to setup VALIDATE PASSWORD component? : y
ΠΠ°Π΄Π°Π΄ΠΈΠΌ ΠΏΠ°ΡΠΎΠ»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ root MySQL:
New password:
Re-enter new password:
Π£Π΄Π°Π»ΠΈΠΌ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ:
Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
ΠΠ°ΠΏΡΠ΅ΡΠΈΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡΡΡ root ΡΠ΄Π°Π»Π΅Π½Π½ΠΎ:
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Π£Π΄Π°Π»ΠΈΠΌ ΡΠ΅ΡΡΠΎΠ²ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ :
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
ΠΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΠΌ ΡΠ°Π±Π»ΠΈΡΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ:
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ, Π΄Π»Ρ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ
ΠΠΎ ΡΡΠΎΠΌΡ Π°Π΄ΡΠ΅ΡΡ ΠΌΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ ΡΡΡΠ°Π½ΠΈΡΡ Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΎΠΉ Drupal.
ΠΡΠ±Π΅ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΡΠ·ΡΠΊ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ: ΡΡΡΡΠΊΠΈΠΉ. ΠΠ°ΠΆΠΌΠ΅ΠΌ Β«Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡΒ»
ΠΡΠ±Π΅ΡΠ΅ΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΎΡΠ½ΡΠΉ ΠΏΡΠΎΡΠΈΠ»Ρ (Π΄Π΅ΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π΄Π»Ρ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠ»Π΅Π½ΠΈΡ Ρ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ). Π Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΡΡΡΡ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Β«ΡΡΠ°Π½Π΄Π°ΡΡΒ».
ΠΠ° ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ Π·Π°Π΄Π°Π΄ΠΈΠΌ ΠΈΠΌΡ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ , Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Β«drupalΒ». Π£ΠΊΠ°ΠΆΠ΅ΠΌ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΠ root ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ Π·Π°Π΄Π°Π½Π½ΡΠΉ Π΅ΠΌΡ, ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ mysql_secure_installation. ΠΠ°ΠΆΠΌΠ΅ΠΌ Β«Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡΒ».
ΠΠΎΠΆΠ΄Π΅ΠΌΡΡ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΎΠ² (ΠΏΡΠΎΡΠ΅ΡΡ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΈΠ½ΡΡ).
Π£ΠΊΠ°ΠΆΠ΅ΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΡΠ°, Π·Π°Π΄Π°Π΄ΠΈΠΌ email ΡΠ°ΠΉΡΠ° (ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΡΠ΄ΡΡ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ ΡΠ°ΠΉΡΠ°), Π»ΠΎΠ³ΠΈΠ½, ΠΏΠ°ΡΠΎΠ»Ρ ΠΈ email ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° Drupal. Π’Π°ΠΊΠΆΠ΅ Π·Π°Π΄Π°Π΄ΠΈΠΌ ΡΡΡΠ°Π½Ρ ΠΈ ΡΠ°ΡΠΎΠ²ΠΎΠΉ ΠΏΠΎΡΡ Π² ΡΠ΅Π³ΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ . Π Π·Π°Π²Π΅ΡΡΠΈΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ Π½Π°ΠΆΠ°Π² Β«Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡΒ».
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π² ΠΏΠ°Π½Π΅Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Ρ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΌ Π»ΠΎΠ³ΠΈΠ½ΠΎΠΌ ΠΈ ΠΏΠ°ΡΠΎΠ»Π΅ΠΌ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° Drupal.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° HTTPS (ΠΎΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ)
ΠΠ»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ HTTPS Ρ VDS Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΡΡΡΠ΅Π΅ DNS ΠΈΠΌΡ, ΡΠΊΠ°ΠΆΠΈΡΠ΅ Π²
/etc/nginx/nginx.conf
Π² ΡΠ°Π·Π΄Π΅Π»Π΅ server ΠΈΠΌΡ ΡΠ΅ΡΠ²Π΅ΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ):
server_name domainname.ru;
ΠΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΠΌ nginx:
service nginx restart
ΠΠ°ΠΏΡΡΡΠΈΠΌ certbot:
sudo /usr/local/bin/certbot-auto --nginx
ΠΠ²Π΅Π΄Π΅ΠΌ ΡΠ²ΠΎΠΉ e-mail, cΠΎΠ³Π»Π°ΡΠΈΠΌΡΡ Ρ ΡΡΠ»ΠΎΠ²ΠΈΡΠΌΠΈ ΡΠ΅ΡΠ²ΠΈΡΠ° (A), ΠΠΎΠ΄ΠΏΠΈΡΠΊΠ° Π½Π° ΡΠ°ΡΡΡΠ»ΠΊΡ (ΠΎΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ) (N), Π²ΡΠ±Π΅ΡΠ΅ΠΌ Π΄ΠΎΠΌΠ΅Π½Π½ΡΠ΅ ΠΈΠΌΠ΅Π½Π° Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ Π½ΡΠΆΠ½ΠΎ ΠΈΠ·Π΄Π°ΡΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ (Enter Π΄Π»Ρ Π²ΡΠ΅Ρ ).
Π ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π²ΡΠ΅ ΠΏΡΠΎΡΠ»ΠΎ Π±Π΅Π· ΠΎΡΠΈΠ±ΠΎΠΊ, ΠΌΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ Π²ΡΠ΄Π°ΡΠ΅ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΎΠ² ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠ°:
Congratulations! You have successfully enabled ...
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π½Π° 80 ΠΏΠΎΡΡ Π±ΡΠ΄ΡΡ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»ΡΡΡΡΡ Π½Π° 443 (https).
ΠΠΎΠ±Π°Π²ΠΈΠΌ Π² /etc/crontab Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΎΠ²:
# Cert Renewal
30 2 * * * root /usr/local/bin/certbot-auto renew --post-hook "nginx -s reload"
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Trusted Host Security (ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ)
ΠΠ°Π½Π½Π°Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° ΠΊΠ°ΠΊ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠΉ Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ base_url, ΠΈ ΠΏΡΠΈΠ·Π²Π°Π½Π° ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ Π°ΡΠ°ΠΊΠΈ HTTP HOST Header (ΠΊΠΎΠ³Π΄Π° Π²Π°Ρ ΡΠ°ΠΉΡ Π΄ΡΠΌΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ½ ΠΊΡΠΎ-ΡΠΎ Π΄ΡΡΠ³ΠΎΠΉ).
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ Π΄ΠΎΠ²Π΅ΡΠ΅Π½Π½ΡΠ΅ Π΄ΠΎΠΌΠ΅Π½Π½ΡΠ΅ ΠΈΠΌΠ΅Π½Π° ΡΠ°ΠΉΡΠ° Π² ΡΠ°ΠΉΠ»Π΅ Π½Π°ΡΡΡΠΎΠ΅ΠΊ.
Π ΡΠ°ΠΉΠ»Π΅
/usr/share/nginx/html/sites/default/settings.php
ΡΠ°ΡΡΠΊΠΎΠΌΠ΅Π½ΡΠΈΡΡΠ΅ΠΌ ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π½Π°ΡΡΡΠΎΠΉΠΊΡ Ρ ΠΏΠ°ΡΡΠ΅ΡΠ½Π°ΠΌΠΈ Π°ΠΊΡΡΠ°Π»ΡΠ½ΡΡ
ΠΈΠΌΠ΅Π½ ΡΠ°ΠΉΡΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
$settings['trusted_host_patterns'] = [
'^www.mydomain.ru$',
];
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° PHP APCu (Π ΠΠΠΠΠΠΠΠ£ΠΠ’Π‘Π―)
Drupal ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ APCu β Alternative PHP User Cache, Π²Π΅ΡΡΠΈΠΈ 8 ΠΈ 9 ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ APCu ΠΊΠ°ΠΊ ΠΊΡΠ°ΡΠΊΠΎΡΡΠΎΡΠ½ΡΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ΅Ρ, ΡΠ΅ΠΌ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ. Π Π°Π·ΠΌΠ΅Ρ ΠΊΠ΅ΡΠ° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ (32 ΠΠ±) ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Ρ ΡΠ°ΠΉΡΠΎΠ², ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π²ΡΡΠ°ΡΡ 512 ΠΠ±.
ΠΠ»Ρ Π°ΠΊΡΠΈΠ²Π°ΡΠΈΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ PHP APCu:
dnf -y install php-pecl-apcu
ΠΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΠΌ nginx ΠΈ php-fpm:
service nginx restart
service php-fpm restart
Π ΡΠ»ΡΡΠ°Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΡΡΠΊΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° ΠΈ APCu Ρ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½Π½ΡΠΌ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ ΠΏΠ°ΠΌΡΡΠΈ Π΄Π»Ρ ΠΊΠ΅ΡΠ°, Π² ΠΏΠ°Π½Π΅Π»ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅, ΡΡΠΎ ΡΠ°Π·ΠΌΠ΅Ρ Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π΄Π»Ρ ΠΊΠ΅ΡΠ° ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ, Π½ΠΎ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ, Π° Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ ΠΈΡΠΏΡΠ°Π²ΡΡ Π² Π±Π»ΠΈΠΆΠ°ΠΉΡΠΈΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡΡ .
ΠΠ»ΠΈ Π΅ΡΠ»ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΡΠ΅ΠΆΠ΅Ρ Π³Π»Π°Π·, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ
Π₯ΠΎΡΠΈΠΌ Π½Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ Π²Ρ ΡΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ Π΄Π»Ρ Π½Π°Ρ ΠΎΠ±ΡΠ°Π·
ΠΡΡΡ ΡΡΠΈ Π²Π°ΡΠΈΠ°Π½ΡΠ°, ΠΊΠ°ΠΊ ΠΏΠΎΡΡΠ°ΡΡΠ²ΠΎΠ²Π°ΡΡ.
ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΡΡΠ΅ ΠΎΠ±ΡΠ°Π· ΡΠ°ΠΌΠΈ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ 3000 ΡΡΠ±Π»Π΅ΠΉ Π½Π° Π±Π°Π»Π°Π½Ρ
ΠΡΠ»ΠΈ Π²Ρ Π³ΠΎΡΠΎΠ²Ρ ΡΡΠ°Π·Ρ ΡΠΈΠ½ΡΡΡΡΡ Π² Π±ΠΎΠΉ ΠΈ ΡΠ°ΠΌΠΎΠΌΡ ΡΠΎΠ·Π΄Π°ΡΡ ΠΎΠ±ΡΠ°Π·, ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²Π°ΠΌ Π½Π΅ Ρ Π²Π°ΡΠ°Π΅Ρ, ΠΌΡ Π·Π°ΡΠΈΡΠ»ΠΈΠΌ Π²Π°ΠΌ 3000 ΡΡΠ±Π»Π΅ΠΉ Π½Π° Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ Π±Π°Π»Π°Π½Ρ β Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΡΡΠ°ΡΠΈΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΡ.
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ²ΠΎΠΉ ΠΎΠ±ΡΠ°Π·:
- Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π°ΠΊΠΊΠ°ΡΠ½Ρ Ρ Π½Π°Ρ Π½Π°
ΡΠ°ΠΉΡΠ΅ - Π‘ΠΎΠΎΠ±ΡΠΈΡΠ΅ Π² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ, ΡΡΠΎ Π²Ρ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΠ΅ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠ±ΡΠ°Π·Ρ
- ΠΡ Π·Π°ΡΠΈΡΠ»ΠΈΠΌ Π²Π°ΠΌ 3000 ΡΡΠ±Π»Π΅ΠΉ ΠΈ Π²ΠΊΠ»ΡΡΠΈΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ½Π°ΠΏΡΠΎΡΡ
- ΠΠ°ΠΊΠ°ΠΆΠΈΡΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ Ρ ΡΠΈΡΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ
- Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π½Π° ΡΡΡ VPS ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΈ Π½Π°ΡΡΡΠΎΠΉΡΠ΅ Π΅Π³ΠΎ
- Π‘ΠΎΡΡΠ°Π²ΡΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΈΠ»ΠΈ ΡΠΊΡΠΈΠΏΡ Π΄Π»Ρ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ ΠΠ
- Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ½Π°ΠΏΡΠΎΡ Π΄Π»Ρ Π½Π°ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°
- ΠΠ°ΠΊΠ°ΠΆΠΈΡΠ΅ Π½ΠΎΠ²ΡΠΉ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ, Π²ΡΠ±ΡΠ°Π² Π² Π²ΡΠΏΠ°Π΄Π°ΡΡΠ΅ΠΌ ΡΠΏΠΈΡΠΊΠ΅ Β«Π¨Π°Π±Π»ΠΎΠ½ ΡΠ΅ΡΠ²Π΅ΡΠ°Β» ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ ΡΠ°Π½Π΅Π΅ ΡΠ½Π°ΠΏΡΠΎΡ
- Π ΡΠ»ΡΡΠ°Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠ°, ΠΏΠ΅ΡΠ΅Π΄Π°ΠΉΡΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ Π½Π° ΡΡΠ°ΠΏΠ΅ 6 ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅
- Π ΡΠ»ΡΡΠ°Π΅ ΠΎΡΠΈΠ±ΠΊΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΠΎΡΠ½ΠΈΡΡ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΏΡΠΈΡΠΈΠ½Ρ ΠΈ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΡ
ΠΠ»Ρ Π²Π»Π°Π΄Π΅Π»ΡΡΠ΅Π² Π±ΠΈΠ·Π½Π΅ΡΠ°: ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΠ΅ ΡΠ²ΠΎΠΉ ΡΠΎΡΡ
ΠΡΠ»ΠΈ Π²Ρ β ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠΎΡΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π½Π° VPS, ΡΠΎ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΊΠ»ΡΡΠΈΡΡ Π²Π°Ρ Π² ΠΌΠ°ΡΠΊΠ΅ΡΠΏΠ»Π΅ΠΉΡ. Π’Π°ΠΊ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠΌΠΎΡΡ Π²Π°ΠΌ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ Π½ΠΎΠ²ΡΡ
ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², ΡΡΠ°ΡΠΈΠΊ ΠΈ ΡΠ·Π½Π°Π²Π°Π΅ΠΌΠΎΡΡΡ.
Π Π°ΡΡΠΊΠ°ΠΆΠΈΡΠ΅ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ , ΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΎΠ±ΡΠ°Π·Π° Π²Π°ΠΌ Π½Π΅ Ρ Π²Π°ΡΠ°Π΅Ρ?
Π ΠΌΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΠΌ Π΅Π³ΠΎ ΡΠ°ΠΌΠΈ
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com