ααΎααααααααααΈαααΈααααΆαααααααΎαα ααααΈααααααΎαααΆαααααΆααα’αααααΈαααα α αΎααααααΆα ααααααΆααΆααααα αΆααααα½ααα αααα»αααΈααααΆαααααααΎα Drupal.
ααΎαααααΆααα’αααααΈααΌαα ααα»αααααΎαααααΎαααΎαααΆαα αα·ααααααααααΌαααΆαααααΌαααΆααααααΎαα‘αΎαα
Drupal - ααΆαααα·ααΆααααΆααααα½α αα·αααΆαα’αα»ααΆααααααΆαααααααΎαααα ααααααααααααααααα ααΈ microsites αα·αααααααα ααΆαααααααααααααααα ααααΎααΆααΌαααααΆααααααΆαααααααα·ααΈααα ααααα ααααααααα»α PHP αα·αααααΎααΌαααααΆααα·ααααααααααΆααααααααΆαααααααααα»ααα·ααααααα
Drupal ααααααΈ 9 αα½ααααα
αΌααα»αααΆαααΆααα’αααααααΆαα’αα»αααααα
αααα»ααααα 8.9α ααΆααα»αααααΆααααΆαααααΆαααααααΈ 9 αα·αααααααΈ 8 ααΊααΆαααα·ααΆαααααΉαααααααα½αααΆαααΆαα’αΆααααα αα·ααααααα»ααααα·ααΆααααααΆααααΈαααα·α
ααα·ααΆ ααααΆα 2021α ααααααΈ 9 ααααααΎα±ααααααΎαααΆαα’αΆαααααααΆαααΆαααΆααααααααα αααααααΎα±ααααΆααΆααααααΆααααα½ααααα»αααΆαααααΎα±αααααααΎαα‘αΎαααΈααααααΈ 8α
αααααΌαααΆααααΆαααΈααα
αααααΆααααΆαααααΎααααΆαα Drupal ααΆααααΌαααΆαααααΆαα±ααααααΎ RAM ααα α 2 GB αα·α CPU α ααα½α 2α
α―αααΆαααααΆααα Drupal ααααα·αααΎβααααΎβαααα αα 100 MB α’αααβααβααΉαβααααΌαααΆαβααα αβαααααΆααβαααααΆαα»αβααΌαααΆα ααΌαααααΆαβαα·αααααα ααααα αααΌαα»αβαααααα αα·αβααΆαβααααα»ααα»α αααβααΉαβα’αΆαααααβααΎβααα αβααα αααααβααααβα’αααα
αααααΆαα 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 sessions αα ααΆ nginx ααΆαα
sudo chown -R nginx. /var/lib/php/sessionααααα»ααααααΆαααααααΆαααα·αααααααΈα―αααΆαααααααα ααΆαααααααα /etc/nginx/nginx.conf (ααΌα αααααα·αααΆαααααααααααααΆαα sed):
sudo sed -i -e '/^[ t]*#/d' /etc/nginx/nginx.confααααααααΆααααααααΆααααα αΆαα gzip αα /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αααααααααααΆααααααααα―αααΆααα·αα·αααα index.php αα /etc/nginx/nginx.confα
sudo sed -i '/ root /usr/share/nginx/html;/a
index index.php index.html index.htm;
' /etc/nginx/nginx.confαααααααααααΆαααααααααααΆαααααΆαααΈαααααααΆαααΎαα ααααΎαααΆα PHP ααΆαααααααα php-fpm αα·ααααααα ααα»αααααΆααα―αααΆααα·αα·αααα αααααΎααααααααΆαα»αααααα αα·αααΆαα αΌαααααΎ αα·ααααααα ααα»ααα α»ααααααΆαα 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α αΎαβααΌαβαααααβαα·αααα·βααΆβααα αΆααβααΎααααΈβα αΆααβα¬αα
chown root /usr/local/bin/certbot-auto
chmod 0755 /usr/local/bin/certbot-autoαααααα‘αΎα certbot dependencies α αΎααα ααααΆααααΆααααααααΆαααΆαααΆαααααααΆ (α ααααΎαα 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/αααααααΆααααΈα―αααΆαααΈαααααα αα root αααααΆαααΈαααααα αααααα
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 α α α»α "αααααΆαα»α αα·αααααα"
ααααααα αΆαααΆαααα‘αΎα αα·αα’αΆαααααααΆαααααααααΎααααΈαααα αα (ααααΎαααΆαα’αΆα α αααΆααααα αααΎαααΆααΈ)α
ααΎαααΉαα ααα’α»ααααα αΆααααααααα ααααα αααααα’ααΈαααααα ααααα (αααααΆαααΌαααααΉαααα αααααααΉαααααΌαααΆαααααΎ) ααΆαα αΌα ααΆααααααααΆαα αα·αα’ααΈαααααααααααΈα’αααααααααααα DrupalααΎαααααΉαααααααααααα αα·αααααααααααααΆαα αααα»αααΆααααααααααααααααα αααααΆαααα αααα ααααΆαααα‘αΎααααα α»α "αααααΆαα»α αα·ααααα"α
αααααΆααααΈααα α’αααα’αΆα α αΌααα ααΆααααααΆαααααααΆααΆαα½αααΉαααΆαα αΌα αα·αααΆααααααααΆααααααα’αααααααααααααααααΆααααααΎαα Drupal.
ααΆαααα‘αΎα HTTPS (ααΆαααααΎα)
ααΎααααΈααααααα ααΆαααααααα HTTPS VDS ααααΌαααααΆαααααα DNS ααααΉαααααΌα αααααΆαααααα»α
/etc/nginx/nginx.confαα αααα»αααααααααΆαααΈααα ααααααααΆαααΈααα (α§ααΆα ααα)α
server_name domainname.ru;αααα αΆααααααΎα nginx α‘αΎααα·αα
service nginx restartαααα αΆααααααΎα certbotα
sudo /usr/local/bin/certbot-auto --nginxαααα αΌαα’ααΈαααααααα’ααα αααααααααΉαααααααααααααααΆαααα (A) ααΆαααααΉαααα·αααααααααααΆα (ααααα α α·ααα) (N) ααααΎαααΎααααααααααααα’αααα ααα αααα·ααααΆαααααα (αααα αΌααααααΆααα’αααααΆααααααΆ)α
ααααα·αααΎα’αααΈαααααΎαααΆααααααααΆαααα α»α ααΎαααΉαααΎαααΆαα’αααΈααΆαα αααα·ααααΆαααααα αα·αααΆαααααααα ααΆαααααααααααΆαααΈααααααααααααα
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"ααα‘αΎααα»ααααα·ααΆααααΆαααΈαααααα»αα α·ααα (ααΆαααααΆα)
ααΆαααααααααααΆααααααααααΆαααααααααΆαα αααααααα αΆαααααΆααααααΉαααΆααααααααΆααααα base_url α αΎαααααΌαααΆααα ααΆα‘αΎαααΎααααΈααΆαααΆαααΆαααΆααααα αΆα HTTP HOST Header (αα ααααααααα αααααααααα’ααααα·αααΆααΆααΆα’αααααααα)α
ααΎααααΈααααΎααΌα αααα α’αααααααΌααααααΆαααααααααααααα’αΆα αα»αα α·αααααΆααααααΆααααα ααααααα αααα»αα―αααΆαααΆααααααα
αα αααα»αα―αααΆα
/usr/share/nginx/html/sites/default/settings.php α
αΌαααΎααα·ααααααααααα α¬ααααααααΆααααααααΆαα½αααααΆααααααααααα αααααααΆααααααα α§ααΆα αααα
$settings['trusted_host_patterns'] = [
'^www.mydomain.ru$',
];
ααΆαααα‘αΎα PHP APCu (ααΆαααααΆα)
Drupal ααΆαααα APCu (ααααΆαααααααΆααα’αααααααΎααααΆαα PHP αααα½α)α ααααααΈ 8 αα·αααΈ 9 ααααΎααααΆαα APCu αααΆαα αααΎαααΆααααΆαααααααΆαααααα»ααααα»αααααααααααΈααΆααααααα»ααα ααα αααααΆαααααααΆααααααΆαααΎα (32 MB) ααΊαααααααααααΆααααα αααααααΆαα αααΎα α αΎααα·αα’αΆα ααΎαααΈ 512 MB ααΆαααα
ααΎααααΈααααΎαααΆα ααΌαααα‘αΎααααΌαα»α PHP APCuα
dnf -y install php-pecl-apcuα αΆααααααΎα nginx αα·α php-fpm α‘αΎααα·αα
service nginx restart
service php-fpm restartααααα·αααΎα’αααααααΎααΆααΆαα»ααααΈ αα·α APCu ααΆαα½αααΉαααα αα’αααα αα αΆααααααΆαααααΆααααααΆααααααΆαααααααΆαα α’αααα’αΆα ααΎαααΆααααααΆααα αααα»αααααΆαααααααΆααΆααα αααα’αααα αα αΆααααααΆαααααα»ααα»ααααααΆααααααΆαααααααΆααααΊαα»αααΈα’αααΈαααααΆαααααΆα ααα»ααααααΆααα·αα’αααΈαααααΎαααΆαααΆαααααΉαααααΌα α αΎαααΆααααααΆααα·αααααΉαααααΌαααααααΆααΉαααααΌαααΆααααααααΌααα αααα»αααΆαα’αΆααααααααααΆααα
α¬ααααα·αααΎααΆααααααΆαααααΎα±αααααααΆααααααααααααααα’ααα α’αααα’αΆα ααααΎ .
ααΎαβα ααβααααΉαβα’αααβααΆ α’αααβααβα’αΆα βαααααΎαβααΌαααΆαβαααααΆααβααΎαβααΆαβαααα
ααΆααααααΎαααΈαααααΆααααααα αΌααα½αα
αααα αααΌαααΆαααααααα½αα―αα αΎαααα½αααΆα 3000 rubles αα ααΉααααα»αααααααα’αααα
ααααα·αααΎα’αααααααααααα½αααΆααααα ααΎααααΈαααααΆαααααααΆααα αΌααα αααα»ααααααΌαα·ααααΆαα α αΎααααααΎαααΌαααΆααααα’ααααααα»αααΆααααα ααΎαααΉααααααα₯αααΆααααα’αααααΆαα½αααΉαααΉαααααΆααα ααα½α 3000 ααΌααααααααααα»αααααΆααααα»αααααα’ααα αααα’αααα’αΆα α αααΆαααΎαααΆαααΈαααα
αααααααααΎαααΌαααΆαααααΆαααααα½αααααα’αααα
- αααααΎαααααΈααΆαα½αααΎααα ααΎ
- α’αα»ααααΆαα±ααα’αααααΆααααααΉαααΆα’αααααΉααααααΎα αα·αααΆαααααααΌαααΆα
- ααΎαααΉααααααα₯αααΆααααα’ααα 3000 ααΌαααα· α αΎαααΎαααααααΆααααααΎαααΌααα
- αααααΆαα·ααααΆαααΈααααα·αααα·αααΆαα½αααΉαααααααααααααα·ααααα·ααΆαααα’αΆα
- ααα‘αΎααααααα·ααΈαα ααΎ VPS αααα αΎαααααααα ααΆααααααααααΆα
- αααααααΆαααααΆα α¬ααααααΈααααααΆααααΆαααΆααα±ααααααΎααααΆαααααααα·ααΈ
- αααααΎαααΌααααααααΆαααααΆαααΈααααααααΆαααααααα ααΆαααααααα
- αααααΆαα·ααααΆαααΈααααα·αααα·αααααΈαααααααΎαααΎαααΌααααααααΆααααααΎαααΈαα»ααα αααα»ααααααΈαααααΆααα α»α "ααααΌαααΆαααΈααα"
- ααααα·αααΎαααΆαααΈαααααααΌαααΆααααααΎαααααααααα ααααααααααΆαααααααα½αααΆααα ααα αΆαααΈ 6 αα ααΆαααααα½ααα αα ααααα
- ααααα·αααΎααΆαααα α»α α’αααα’αΆα αα·αα·αααααΎααααααΆαααΆαααααααααΆααα ααα»αα α αΎαααααΎααΆαααα‘αΎαααααααα
αααααΆααααα αΆααα’αΆααΈαααααα αααααααΌααααααα·ααΈααααα’αααα
ααααα·αααΎα’αααααΆα’ααααααααΎααααααα·ααΈαααααααΌαααΆαααΆααα±ααααααΎααααΆαα αα·αααααΎααααΆαααα ααΎ VPS αααααΎαα’αΆα αα½ααααα αΌαα’ααααα αααα»αααΈααααΆαα αααααΆαααααααααΎαα’αΆα αα½αα’αααααΆαααα’αα·αα·ααααααΈ α ααΆα ααα αα·αααΆααααααΉαα
ααααΆααααΎααα αααα»αααα·αααααααΆααΎααΌαααΆααααα’αααααΆαααααα½α?
α αΎαααΎαααΉααααα αααΆααααααα½αα―αα
ααααα: www.habr.com
